struct Feagin10ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache
  adaptiveConst::T
  a0100::T
  a0200::T
  a0201::T
  a0300::T
  a0302::T
  a0400::T
  a0402::T
  a0403::T
  a0500::T
  a0503::T
  a0504::T
  a0600::T
  a0603::T
  a0604::T
  a0605::T
  a0700::T
  a0704::T
  a0705::T
  a0706::T
  a0800::T
  a0805::T
  a0806::T
  a0807::T
  a0900::T
  a0905::T
  a0906::T
  a0907::T
  a0908::T
  a1000::T
  a1005::T
  a1006::T
  a1007::T
  a1008::T
  a1009::T
  a1100::T
  a1105::T
  a1106::T
  a1107::T
  a1108::T
  a1109::T
  a1110::T
  a1200::T
  a1203::T
  a1204::T
  a1205::T
  a1206::T
  a1207::T
  a1208::T
  a1209::T
  a1210::T
  a1211::T
  a1300::T
  a1302::T
  a1303::T
  a1305::T
  a1306::T
  a1307::T
  a1308::T
  a1309::T
  a1310::T
  a1311::T
  a1312::T
  a1400::T
  a1401::T
  a1404::T
  a1406::T
  a1412::T
  a1413::T
  a1500::T
  a1502::T
  a1514::T
  a1600::T
  a1601::T
  a1602::T
  a1604::T
  a1605::T
  a1606::T
  a1607::T
  a1608::T
  a1609::T
  a1610::T
  a1611::T
  a1612::T
  a1613::T
  a1614::T
  a1615::T
  b1::T
  b2::T
  b3::T
  b4::T
  b5::T
  b6::T
  b7::T
  b8::T
  b9::T
  b10::T
  b11::T
  b12::T
  b13::T
  b14::T
  b15::T
  b16::T
  b17::T
  c1::T2
  c2::T2
  c3::T2
  c4::T2
  c5::T2
  c6::T2
  c7::T2
  c8::T2
  c9::T2
  c10::T2
  c11::T2
  c12::T2
  c13::T2
  c14::T2
  c15::T2
  c16::T2
end

"""
constructFeagin10

"""
Base.@pure function Feagin10ConstantCache{T<:CompiledFloats,T2<:CompiledFloats}(::Type{T},::Type{T2})
  adaptiveConst = T(0.002777777777777778)
  a0100 = T(0.1)

  a0200 = T(-0.9151765613752915)
  a0201 = T(1.4545344021782731)

  a0300 = T(0.20225919030111816)
  a0302 = T(0.6067775709033545)

  a0400 = T(0.18402471470864357)
  a0402 = T(0.19796683122719236)
  a0403 = T(-0.07295478473136326)

  a0500 = T(0.08790073402066813)
  a0503 = T(0.41045970252026065)
  a0504 = T(0.4827137536788665)

  a0600 = T(0.08597005049024603)
  a0603 = T(0.3308859630407222)
  a0604 = T(0.4896629573094502)
  a0605 = T(-0.07318563750708508)

  a0700 = T(0.12093044912533372)
  a0704 = T(0.2601246757582956)
  a0705 = T(0.032540262154909134)
  a0706 = T(-0.0595780211817361)

  a0800 = T(0.11085437958039149)
  a0805 = T(-0.06057614882550056)
  a0806 = T(0.3217637056017784)
  a0807 = T(0.510485725608063)

  a0900 = T(0.112054414752879)
  a0905 = T(-0.14494277590286592)
  a0906 = T(-0.3332697190962567)
  a0907 = T(0.4992692295568801)
  a0908 = T(0.5095046089296861)

  a1000 = T(0.11397678396418598)
  a1005 = T(-0.07688133642033569)
  a1006 = T(0.23952736032439065)
  a1007 = T(0.3977746623680946)
  a1008 = T(0.010755895687360746)
  a1009 = T(-0.3277691241640189)

  a1100 = T(0.07983145282801961)
  a1105 = T(-0.052032968680060306)
  a1106 = T(-0.05769541461685489)
  a1107 = T(0.19478191571210415)
  a1108 = T(0.14538492318832508)
  a1109 = T(-0.07829427103516708)
  a1110 = T(-0.11450329936109892)

  a1200 = T(0.9851156101648573)
  a1203 = T(0.3308859630407222)
  a1204 = T(0.4896629573094502)
  a1205 = T(-1.3789648657484357)
  a1206 = T(-0.8611641950276356)
  a1207 = T(5.784288136375372)
  a1208 = T(3.2880776198510357)
  a1209 = T(-2.386339050931364)
  a1210 = T(-3.254793424836439)
  a1211 = T(-2.16343541686423)

  a1300 = T(0.8950802957716328)
  a1302 = T(0.19796683122719236)
  a1303 = T(-0.07295478473136326)
  a1305 = T(-0.8512362396620076)
  a1306 = T(0.3983201123185333)
  a1307 = T(3.639372631810356)
  a1308 = T(1.5482287703983033)
  a1309 = T(-2.122217147040537)
  a1310 = T(-1.5835039854532618)
  a1311 = T(-1.7156160828593627)
  a1312 = T(-0.024403640575012746)

  a1400 = T(-0.9151765613752915)
  a1401 = T(1.4545344021782731)
  a1404 = T(-0.7773336436449683)
  a1406 = T(-0.0910895662155176)
  a1412 = T(0.0910895662155176)
  a1413 = T(0.7773336436449683)

  a1500 = T(0.1)
  a1502 = T(-0.15717866579977116)
  a1514 = T(0.15717866579977116)

  a1600 = T(0.1817813007000953)
  a1601 = T(0.675)
  a1602 = T(0.3427581598471898)
  a1604 = T(0.25911121454832275)
  a1605 = T(-0.35827896671795206)
  a1606 = T(-1.0459489594088331)
  a1607 = T(0.930327845415627)
  a1608 = T(1.7795095943170811)
  a1609 = T(0.1)
  a1610 = T(-0.2825475695390441)
  a1611 = T(-0.15932735011997254)
  a1612 = T(-0.14551589464700151)
  a1613 = T(-0.25911121454832275)
  a1614 = T(-0.3427581598471898)
  a1615 = T(-0.675)

  b1  = T(0.03333333333333333)
  b2  = T(0.025)
  b3  = T(0.03333333333333333)
  b4  = T(0)
  b5  = T(0.05)
  b6  = T(0)
  b7  = T(0.04)
  b8  = T(0)
  b9  = T(0.1892374781489235)
  b10 = T(0.2774291885177432)
  b11 = T(0.2774291885177432)
  b12 = T(0.1892374781489235)
  b13 = T(-0.04)
  b14 = T(-0.05)
  b15 = T(-0.03333333333333333)
  b16 = T(-0.025)
  b17 = T(0.03333333333333333)

  c1 = T2(0.1)
  c2 = T2(0.5393578408029818)
  c3 = T2(0.8090367612044727)
  c4 = T2(0.30903676120447265)
  c5 = T2(0.9810741902197953)
  c6 = T2(0.8333333333333334)
  c7 = T2(0.3540173658568024)
  c8 = T2(0.8825276619647323)
  c9 = T2(0.6426157582403226)
  c10 = T2(0.3573842417596775)
  c11 = T2(0.11747233803526766)
  c12 = T2(0.8333333333333334)
  c13 = T2(0.30903676120447265)
  c14 = T2(0.5393578408029818)
  c15 = T2(0.1)
  c16 = T2(1)
  Feagin10ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1203,a1204,a1205,a1206,a1207,a1208,a1209,a1210,a1211,a1300,a1302,a1303,a1305,a1306,a1307,a1308,a1309,a1310,a1311,a1312,a1400,a1401,a1404,a1406,a1412,a1413,a1500,a1502,a1514,a1600,a1601,a1602,a1604,a1605,a1606,a1607,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16)
end

"""
constructFeagin10

"""
function Feagin10ConstantCache(T::Type,T2::Type)
  adaptiveConst = T(1//360)
  a0100 = T(1//10)

  a0200 = T(parse(BigFloat,"-0.915176561375291440520015019275342154318951387664369720564660"))
  a0201 = T(parse(BigFloat,"1.45453440217827322805250021715664459117622483736537873607016"))

  a0300 = T(parse(BigFloat,"0.202259190301118170324681949205488413821477543637878380814562"))
  a0302 = T(parse(BigFloat,"0.606777570903354510974045847616465241464432630913635142443687"))

  a0400 = T(parse(BigFloat,"0.184024714708643575149100693471120664216774047979591417844635"))
  a0402 = T(parse(BigFloat,"0.197966831227192369068141770510388793370637287463360401555746"))
  a0403 = T(parse(BigFloat,"-0.0729547847313632629185146671595558023015011608914382961421311"))

  a0500 = T(parse(BigFloat,"0.0879007340206681337319777094132125475918886824944548534041378"))
  a0503 = T(parse(BigFloat,"0.410459702520260645318174895920453426088035325902848695210406"))
  a0504 = T(parse(BigFloat,"0.482713753678866489204726942976896106809132737721421333413261"))

  a0600 = T(parse(BigFloat,"0.0859700504902460302188480225945808401411132615636600222593880"))
  a0603 = T(parse(BigFloat,"0.330885963040722183948884057658753173648240154838402033448632"))
  a0604 = T(parse(BigFloat,"0.489662957309450192844507011135898201178015478433790097210790"))
  a0605 = T(parse(BigFloat,"-0.0731856375070850736789057580558988816340355615025188195854775"))

  a0700 = T(parse(BigFloat,"0.120930449125333720660378854927668953958938996999703678812621"))
  a0704 = T(parse(BigFloat,"0.260124675758295622809007617838335174368108756484693361887839"))
  a0705 = T(parse(BigFloat,"0.0325402621549091330158899334391231259332716675992700000776101"))
  a0706 = T(parse(BigFloat,"-0.0595780211817361001560122202563305121444953672762930724538856"))

  a0800 = T(parse(BigFloat,"0.110854379580391483508936171010218441909425780168656559807038"))
  a0805 = T(parse(BigFloat,"-0.0605761488255005587620924953655516875526344415354339234619466"))
  a0806 = T(parse(BigFloat,"0.321763705601778390100898799049878904081404368603077129251110"))
  a0807 = T(parse(BigFloat,"0.510485725608063031577759012285123416744672137031752354067590"))

  a0900 = T(parse(BigFloat,"0.112054414752879004829715002761802363003717611158172229329393"))
  a0905 = T(parse(BigFloat,"-0.144942775902865915672349828340980777181668499748506838876185"))
  a0906 = T(parse(BigFloat,"-0.333269719096256706589705211415746871709467423992115497968724"))
  a0907 = T(parse(BigFloat,"0.499269229556880061353316843969978567860276816592673201240332"))
  a0908 = T(parse(BigFloat,"0.509504608929686104236098690045386253986643232352989602185060"))

  a1000 = T(parse(BigFloat,"0.113976783964185986138004186736901163890724752541486831640341"))
  a1005 = T(parse(BigFloat,"-0.0768813364203356938586214289120895270821349023390922987406384"))
  a1006 = T(parse(BigFloat,"0.239527360324390649107711455271882373019741311201004119339563"))
  a1007 = T(parse(BigFloat,"0.397774662368094639047830462488952104564716416343454639902613"))
  a1008 = T(parse(BigFloat,"0.0107558956873607455550609147441477450257136782823280838547024"))
  a1009 = T(parse(BigFloat,"-0.327769124164018874147061087350233395378262992392394071906457"))

  a1100 = T(parse(BigFloat,"0.0798314528280196046351426864486400322758737630423413945356284"))
  a1105 = T(parse(BigFloat,"-0.0520329686800603076514949887612959068721311443881683526937298"))
  a1106 = T(parse(BigFloat,"-0.0576954146168548881732784355283433509066159287152968723021864"))
  a1107 = T(parse(BigFloat,"0.194781915712104164976306262147382871156142921354409364738090"))
  a1108 = T(parse(BigFloat,"0.145384923188325069727524825977071194859203467568236523866582"))
  a1109 = T(parse(BigFloat,"-0.0782942710351670777553986729725692447252077047239160551335016"))
  a1110 = T(parse(BigFloat,"-0.114503299361098912184303164290554670970133218405658122674674"))

  a1200 = T(parse(BigFloat,"0.985115610164857280120041500306517278413646677314195559520529"))
  a1203 = T(parse(BigFloat,"0.330885963040722183948884057658753173648240154838402033448632"))
  a1204 = T(parse(BigFloat,"0.489662957309450192844507011135898201178015478433790097210790"))
  a1205 = T(parse(BigFloat,"-1.37896486574843567582112720930751902353904327148559471526397"))
  a1206 = T(parse(BigFloat,"-0.861164195027635666673916999665534573351026060987427093314412"))
  a1207 = T(parse(BigFloat,"5.78428813637537220022999785486578436006872789689499172601856"))
  a1208 = T(parse(BigFloat,"3.28807761985103566890460615937314805477268252903342356581925"))
  a1209 = T(parse(BigFloat,"-2.38633905093136384013422325215527866148401465975954104585807"))
  a1210 = T(parse(BigFloat,"-3.25479342483643918654589367587788726747711504674780680269911"))
  a1211 = T(parse(BigFloat,"-2.16343541686422982353954211300054820889678036420109999154887"))

  a1300 = T(parse(BigFloat,"0.895080295771632891049613132336585138148156279241561345991710"))
  a1302 = T(parse(BigFloat,"0.197966831227192369068141770510388793370637287463360401555746"))
  a1303 = T(parse(BigFloat,"-0.0729547847313632629185146671595558023015011608914382961421311"))
  a1305 = T(parse(BigFloat,"-0.851236239662007619739049371445966793289359722875702227166105"))
  a1306 = T(parse(BigFloat,"0.398320112318533301719718614174373643336480918103773904231856"))
  a1307 = T(parse(BigFloat,"3.63937263181035606029412920047090044132027387893977804176229"))
  a1308 = T(parse(BigFloat,"1.54822877039830322365301663075174564919981736348973496313065"))
  a1309 = T(parse(BigFloat,"-2.12221714704053716026062427460427261025318461146260124401561"))
  a1310 = T(parse(BigFloat,"-1.58350398545326172713384349625753212757269188934434237975291"))
  a1311 = T(parse(BigFloat,"-1.71561608285936264922031819751349098912615880827551992973034"))
  a1312 = T(parse(BigFloat,"-0.0244036405750127452135415444412216875465593598370910566069132"))

  a1400 = T(parse(BigFloat,"-0.915176561375291440520015019275342154318951387664369720564660"))
  a1401 = T(parse(BigFloat,"1.45453440217827322805250021715664459117622483736537873607016"))
  a1404 = T(parse(BigFloat,"-0.777333643644968233538931228575302137803351053629547286334469"))
  a1406 = T(parse(BigFloat,"-0.0910895662155176069593203555807484200111889091770101799647985"))
  a1412 = T(parse(BigFloat,"0.0910895662155176069593203555807484200111889091770101799647985"))
  a1413 = T(parse(BigFloat,"0.777333643644968233538931228575302137803351053629547286334469"))

  a1500 = T(1//10)
  a1502 = T(parse(BigFloat,"-0.157178665799771163367058998273128921867183754126709419409654"))
  a1514 = T(parse(BigFloat,"0.157178665799771163367058998273128921867183754126709419409654"))

  a1600 = T(parse(BigFloat,"0.181781300700095283888472062582262379650443831463199521664945"))
  a1601 = T(27//40)
  a1602 = T(parse(BigFloat,"0.342758159847189839942220553413850871742338734703958919937260"))
  a1604 = T(parse(BigFloat,"0.259111214548322744512977076191767379267783684543182428778156"))
  a1605 = T(parse(BigFloat,"-0.358278966717952089048961276721979397739750634673268802484271"))
  a1606 = T(parse(BigFloat,"-1.04594895940883306095050068756409905131588123172378489286080"))
  a1607 = T(parse(BigFloat,"0.930327845415626983292300564432428777137601651182965794680397"))
  a1608 = T(parse(BigFloat,"1.77950959431708102446142106794824453926275743243327790536000"))
  a1609 = T(1//10)
  a1610 = T(parse(BigFloat,"-0.282547569539044081612477785222287276408489375976211189952877"))
  a1611 = T(parse(BigFloat,"-0.159327350119972549169261984373485859278031542127551931461821"))
  a1612 = T(parse(BigFloat,"-0.145515894647001510860991961081084111308650130578626404945571"))
  a1613 = T(parse(BigFloat,"-0.259111214548322744512977076191767379267783684543182428778156"))
  a1614 = T(parse(BigFloat,"-0.342758159847189839942220553413850871742338734703958919937260"))
  a1615 = T(-27//40)

  b1  = T(1//30)
  b2  = T(1//40)
  b3  = T(1//30)
  b4  = T(0)
  b5  = T(1//20)
  b6  = T(0)
  b7  = T(1//25)
  b8  = T(0)
  b9  = T(parse(BigFloat,"0.189237478148923490158306404106012326238162346948625830327194"))
  b10 = T(parse(BigFloat,"0.277429188517743176508360262560654340428504319718040836339472"))
  b11 = T(parse(BigFloat,"0.277429188517743176508360262560654340428504319718040836339472"))
  b12 = T(parse(BigFloat,"0.189237478148923490158306404106012326238162346948625830327194"))
  b13 = T(-1//25)
  b14 = T(-1//20)
  b15 = T(-1//30)
  b16 = T(-1//40)
  b17 = T(1//30)

  c1 = T2(1//10)
  c2 = T2(parse(BigFloat,"0.539357840802981787532485197881302436857273449701009015505500"))
  c3 = T2(parse(BigFloat,"0.809036761204472681298727796821953655285910174551513523258250"))
  c4 = T2(parse(BigFloat,"0.309036761204472681298727796821953655285910174551513523258250"))
  c5 = T2(parse(BigFloat,"0.981074190219795268254879548310562080489056746118724882027805"))
  c6 = T2(5//6)
  c7 = T2(parse(BigFloat,"0.354017365856802376329264185948796742115824053807373968324184"))
  c8 = T2(parse(BigFloat,"0.882527661964732346425501486979669075182867844268052119663791"))
  c9 = T2(parse(BigFloat,"0.642615758240322548157075497020439535959501736363212695909875"))
  c10 = T2(parse(BigFloat,"0.357384241759677451842924502979560464040498263636787304090125"))
  c11 = T2(parse(BigFloat,"0.117472338035267653574498513020330924817132155731947880336209"))
  c12 = T2(5//6)
  c13 = T2(parse(BigFloat,"0.309036761204472681298727796821953655285910174551513523258250"))
  c14 = T2(parse(BigFloat,"0.539357840802981787532485197881302436857273449701009015505500"))
  c15 = T2(1//10)
  c16 = T2(1)
  Feagin10ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1203,a1204,a1205,a1206,a1207,a1208,a1209,a1210,a1211,a1300,a1302,a1303,a1305,a1306,a1307,a1308,a1309,a1310,a1311,a1312,a1400,a1401,a1404,a1406,a1412,a1413,a1500,a1502,a1514,a1600,a1601,a1602,a1604,a1605,a1606,a1607,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16)
end

struct Feagin12ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache
  adaptiveConst::T
  a0100::T
  a0200::T
  a0201::T
  a0300::T
  a0302::T
  a0400::T
  a0402::T
  a0403::T
  a0500::T
  a0503::T
  a0504::T
  a0600::T
  a0603::T
  a0604::T
  a0605::T
  a0700::T
  a0704::T
  a0705::T
  a0706::T
  a0800::T
  a0805::T
  a0806::T
  a0807::T
  a0900::T
  a0905::T
  a0906::T
  a0907::T
  a0908::T
  a1000::T
  a1005::T
  a1006::T
  a1007::T
  a1008::T
  a1009::T
  a1100::T
  a1105::T
  a1106::T
  a1107::T
  a1108::T
  a1109::T
  a1110::T
  a1200::T
  a1208::T
  a1209::T
  a1210::T
  a1211::T
  a1300::T
  a1308::T
  a1309::T
  a1310::T
  a1311::T
  a1312::T
  a1400::T
  a1408::T
  a1409::T
  a1410::T
  a1411::T
  a1412::T
  a1413::T
  a1500::T
  a1508::T
  a1509::T
  a1510::T
  a1511::T
  a1512::T
  a1513::T
  a1514::T
  a1600::T
  a1608::T
  a1609::T
  a1610::T
  a1611::T
  a1612::T
  a1613::T
  a1614::T
  a1615::T
  a1700::T
  a1705::T
  a1706::T
  a1707::T
  a1708::T
  a1709::T
  a1710::T
  a1711::T
  a1712::T
  a1713::T
  a1714::T
  a1715::T
  a1716::T
  a1800::T
  a1805::T
  a1806::T
  a1807::T
  a1808::T
  a1809::T
  a1810::T
  a1811::T
  a1812::T
  a1813::T
  a1814::T
  a1815::T
  a1816::T
  a1817::T
  a1900::T
  a1904::T
  a1905::T
  a1906::T
  a1908::T
  a1909::T
  a1910::T
  a1911::T
  a1912::T
  a1913::T
  a1914::T
  a1915::T
  a1916::T
  a1917::T
  a1918::T
  a2000::T
  a2003::T
  a2004::T
  a2005::T
  a2007::T
  a2009::T
  a2010::T
  a2017::T
  a2018::T
  a2019::T
  a2100::T
  a2102::T
  a2103::T
  a2106::T
  a2107::T
  a2109::T
  a2110::T
  a2117::T
  a2118::T
  a2119::T
  a2120::T
  a2200::T
  a2201::T
  a2204::T
  a2206::T
  a2220::T
  a2221::T
  a2300::T
  a2302::T
  a2322::T
  a2400::T
  a2401::T
  a2402::T
  a2404::T
  a2406::T
  a2407::T
  a2408::T
  a2409::T
  a2410::T
  a2411::T
  a2412::T
  a2413::T
  a2414::T
  a2415::T
  a2416::T
  a2417::T
  a2418::T
  a2419::T
  a2420::T
  a2421::T
  a2422::T
  a2423::T
  c1::T2
  c2::T2
  c3::T2
  c4::T2
  c5::T2
  c6::T2
  c7::T2
  c8::T2
  c9::T2
  c10::T2
  c11::T2
  c12::T2
  c13::T2
  c14::T2
  c15::T2
  c16::T2
  c17::T2
  c18::T2
  c19::T2
  c20::T2
  c21::T2
  c22::T2
  c23::T2
  c24::T2
  b1::T
  b2::T
  b3::T
  b4::T
  b5::T
  b6::T
  b7::T
  b8::T
  b9::T
  b10::T
  b11::T
  b12::T
  b13::T
  b14::T
  b15::T
  b16::T
  b17::T
  b18::T
  b19::T
  b20::T
  b21::T
  b22::T
  b23::T
  b24::T
  b25::T
end

"""
constructFeagin12

"""
Base.@pure function Feagin12ConstantCache{T<:CompiledFloats,T2<:CompiledFloats}(::Type{T},::Type{T2})
  adaptiveConst = T(49//640)
  c1 = T2(1//5)
  c2 = T2(5//9)
  c3 = T2(5//6)
  c4 = T2(1//3)
  c5 = T2(1)
  c6 = T2(0.671835709170513812712245661002797570438953420568682550710222)
  c7 = T2(0.288724941110620201935458488967024976908118598341806976469674)
  c8 = T2(9//16)
  c9 = T2(5//6)
  c10 = T2(0.947695431179199287562380162101836721649589325892740646458322)
  c11 = T2(0.0548112876863802643887753674810754475842153612931128785028369)
  c12 = T2(0.0848880518607165350639838930162674302064148175640019542045934)
  c13 = T2(0.265575603264642893098114059045616835297201264164077621448665)
  c14 = T2(1//2)
  c15 = T2(0.734424396735357106901885940954383164702798735835922378551335)
  c16 = T2(0.915111948139283464936016106983732569793585182435998045795407)
  c17 = T2(0.947695431179199287562380162101836721649589325892740646458322)
  c18 = T2(5//6)
  c19 = T2(0.288724941110620201935458488967024976908118598341806976469674)
  c20 = T2(0.671835709170513812712245661002797570438953420568682550710222)
  c21 = T2(1//3)
  c22 = T2(5//9)
  c23 = T2(1//5)
  c24 = T2(1)

  b1  = T(1//42)
  b2  = T(234375//10000000)
  b3  = T(3125//100000)
  b4  = T(0)
  b5  = T(1//24)
  b6  = T(0)
  b7  = T(1//20)
  b8  = T(1//20)
  b9  = T(0)
  b10 = T(1//10)
  b11 = T(1//14)
  b12 = T(0)
  b13 = T(0.138413023680782974005350203145033146748813640089941234591267)
  b14 = T(0.215872690604931311708935511140681138965472074195773051123019)
  b15 = T(0.243809523809523809523809523809523809523809523809523809523810)
  b16 = T(0.215872690604931311708935511140681138965472074195773051123019)
  b17 = T(0.138413023680782974005350203145033146748813640089941234591267)
  b18 = T(-0.0714285714285714285714285714285714285714285714285714285714286)
  b19 = T(-1//10)
  b20 = T(-1//20)
  b21 = T(-1//20)
  b22 = T(-1//24)
  b23 = T(-3125//100000)
  b24 = T(-234375//10000000)
  b25 = T(1//42)

  a0100 = T(1//5)

  a0200 = T(-0.216049382716049382716049382716049382716049382716049382716049)
  a0201 = T(0.771604938271604938271604938271604938271604938271604938271605)

  a0300 = T(5//24)
  a0302 = T(5//8)

  a0400 = T(29//150)
  a0402 = T(11//50)
  a0403 = T(-2//25)

  a0500 = T(1//10)
  a0503 = T(2//5)
  a0504 = T(1//2)

  a0600 = T(0.103364471650010477570395435690481791543342708330349879244197)
  a0603 = T(0.124053094528946761061581889237115328211074784955180298044074)
  a0604 = T(0.483171167561032899288836480451962508724109257517289177302380)
  a0605 = T(-0.0387530245694763252085681443767620580395733302341368038804290)

  a0700 = T(0.124038261431833324081904585980175168140024670698633612292480)
  a0704 = T(0.217050632197958486317846256953159942875916353757734167684657)
  a0705 = T(0.0137455792075966759812907801835048190594443990939408530842918)
  a0706 = T(-0.0661095317267682844455831341498149531672668252085016565917546)

  a0800 = T(0.0914774894856882983144991846980432197088832099976660100090486)
  a0805 = T(-0.00544348523717469689965754944144838611346156873847009178068318)
  a0806 = T(0.0680716801688453518578515120895103863112751730758794372203952)
  a0807 = T(0.408394315582641046727306852653894780093303185664924644551239)

  a0900 = T(0.0890013652502551018954509355423841780143232697403434118692699)
  a0905 = T(0.00499528226645532360197793408420692800405891149406814091955810)
  a0906 = T(0.397918238819828997341739603001347156083435060931424970826304)
  a0907 = T(0.427930210752576611068192608300897981558240730580396406312359)
  a0908 = T(-0.0865117637557827005740277475955029103267246394128995965941585)

  a1000 = T(0.0695087624134907543112693906409809822706021061685544615255758)
  a1005 = T(0.129146941900176461970759579482746551122871751501482634045487)
  a1006 = T(1.53073638102311295076342566143214939031177504112433874313011)
  a1007 = T(0.577874761129140052546751349454576715334892100418571882718036)
  a1008 = T(-0.951294772321088980532340837388859453930924498799228648050949)
  a1009 = T(-0.408276642965631951497484981519757463459627174520978426909934)

  a1100 = T(0.0444861403295135866269453507092463581620165501018684152933313)
  a1105 = T(-0.00380476867056961731984232686574547203016331563626856065717964)
  a1106 = T(0.0106955064029624200721262602809059154469206077644957399593972)
  a1107 = T(0.0209616244499904333296674205928919920806734650660039898074652)
  a1108 = T(-0.0233146023259321786648561431551978077665337818756053603898847)
  a1109 = T(0.00263265981064536974369934736325334761174975280887405725010964)
  a1110 = T(0.00315472768977025060103545855572111407955208306374459723959783)

  a1200 = T(0.0194588815119755475588801096525317761242073762016273186231215)
  a1208 = T(0.0000678512949171812509306121653452367476194364781259165332321534)
  a1209 = T(-0.0000429795859049273623271005330230162343568863387724883603675550)
  a1210 = T(0.0000176358982260285155407485928953302139937553442829975734148981)
  a1211 = T(0.0653866627415027051009595231385181033549511358787382098351924)

  a1300 = T(0.206836835664277105916828174798272361078909196043446411598231)
  a1308 = T(0.0166796067104156472828045866664696450306326505094792505215514)
  a1309 = T(-0.00879501563200710214457024178249986591130234990219959208704979)
  a1310 = T(0.00346675455362463910824462315246379209427513654098596403637231)
  a1311 = T(-0.861264460105717678161432562258351242030270498966891201799225)
  a1312 = T(0.908651882074050281096239478469262145034957129939256789178785)

  a1400 = T(0.0203926084654484010091511314676925686038504449562413004562382)
  a1408 = T(0.0869469392016685948675400555583947505833954460930940959577347)
  a1409 = T(-0.0191649630410149842286436611791405053287170076602337673587681)
  a1410 = T(0.00655629159493663287364871573244244516034828755253746024098838)
  a1411 = T(0.0987476128127434780903798528674033899738924968006632201445462)
  a1412 = T(0.00535364695524996055083260173615567408717110247274021056118319)
  a1413 = T(0.301167864010967916837091303817051676920059229784957479998077)

  a1500 = T(0.228410433917778099547115412893004398779136994596948545722283)
  a1508 = T(-0.498707400793025250635016567442511512138603770959682292383042)
  a1509 = T(0.134841168335724478552596703792570104791700727205981058201689)
  a1510 = T(-0.0387458244055834158439904226924029230935161059142806805674360)
  a1511 = T(-1.27473257473474844240388430824908952380979292713250350199641)
  a1512 = T(1.43916364462877165201184452437038081875299303577911839630524)
  a1513 = T(-0.214007467967990254219503540827349569639028092344812795499026)
  a1514 = T(0.958202417754430239892724139109781371059908874605153648768037)

  a1600 = T(2.00222477655974203614249646012506747121440306225711721209798)
  a1608 = T(2.06701809961524912091954656438138595825411859673341600679555)
  a1609 = T(0.623978136086139541957471279831494466155292316167021080663140)
  a1610 = T(-0.0462283685500311430283203554129062069391947101880112723185773)
  a1611 = T(-8.84973288362649614860075246727118949286604835457092701094630)
  a1612 = T(7.74257707850855976227437225791835589560188590785037197433615)
  a1613 = T(-0.588358519250869210993353314127711745644125882130941202896436)
  a1614 = T(-1.10683733362380649395704708016953056176195769617014899442903)
  a1615 = T(-0.929529037579203999778397238291233214220788057511899747507074)

  a1700 = T(3.13789533412073442934451608989888796808161259330322100268310)
  a1705 = T(0.129146941900176461970759579482746551122871751501482634045487)
  a1706 = T(1.53073638102311295076342566143214939031177504112433874313011)
  a1707 = T(0.577874761129140052546751349454576715334892100418571882718036)
  a1708 = T(5.42088263055126683050056840891857421941300558851862156403363)
  a1709 = T(0.231546926034829304872663800877643660904880180835945693836936)
  a1710 = T(0.0759292995578913560162301311785251873561801342333194895292058)
  a1711 = T(-12.3729973380186513287414553402595806591349822617535905976253)
  a1712 = T(9.85455883464769543935957209317369202080367765721777101906955)
  a1713 = T(0.0859111431370436529579357709052367772889980495122329601159540)
  a1714 = T(-5.65242752862643921117182090081762761180392602644189218673969)
  a1715 = T(-1.94300935242819610883833776782364287728724899124166920477873)
  a1716 = T(-0.128352601849404542018428714319344620742146491335612353559923)

  a1800 = T(1.38360054432196014878538118298167716825163268489922519995564)
  a1805 = T(0.00499528226645532360197793408420692800405891149406814091955810)
  a1806 = T(0.397918238819828997341739603001347156083435060931424970826304)
  a1807 = T(0.427930210752576611068192608300897981558240730580396406312359)
  a1808 = T(-1.30299107424475770916551439123047573342071475998399645982146)
  a1809 = T(0.661292278669377029097112528107513072734573412294008071500699)
  a1810 = T(-0.144559774306954349765969393688703463900585822441545655530145)
  a1811 = T(-6.96576034731798203467853867461083919356792248105919255460819)
  a1812 = T(6.65808543235991748353408295542210450632193197576935120716437)
  a1813 = T(-1.66997375108841486404695805725510845049807969199236227575796)
  a1814 = T(2.06413702318035263832289040301832647130604651223986452170089)
  a1815 = T(-0.674743962644306471862958129570837723192079875998405058648892)
  a1816 = T(-0.00115618834794939500490703608435907610059605754935305582045729)
  a1817 = T(-0.00544057908677007389319819914241631024660726585015012485938593)

  a1900 = T(0.951236297048287669474637975894973552166903378983475425758226)
  a1904 = T(0.217050632197958486317846256953159942875916353757734167684657)
  a1905 = T(0.0137455792075966759812907801835048190594443990939408530842918)
  a1906 = T(-0.0661095317267682844455831341498149531672668252085016565917546)
  a1908 = T(0.152281696736414447136604697040747131921486432699422112099617)
  a1909 = T(-0.337741018357599840802300793133998004354643424457539667670080)
  a1910 = T(-0.0192825981633995781534949199286824400469353110630787982121133)
  a1911 = T(-3.68259269696866809932409015535499603576312120746888880201882)
  a1912 = T(3.16197870406982063541533528419683854018352080342887002331312)
  a1913 = T(-0.370462522106885290716991856022051125477943482284080569177386)
  a1914 = T(-0.0514974200365440434996434456698127984941168616474316871020314)
  a1915 = T(-0.000829625532120152946787043541792848416659382675202720677536554)
  a1916 = T(0.00000279801041419278598986586589070027583961355402640879503213503)
  a1917 = T(0.0418603916412360287969841020776788461794119440689356178942252)
  a1918 = T(0.279084255090877355915660874555379649966282167560126269290222)

  a2000 = T(0.103364471650010477570395435690481791543342708330349879244197)
  a2003 = T(0.124053094528946761061581889237115328211074784955180298044074)
  a2004 = T(0.483171167561032899288836480451962508724109257517289177302380)
  a2005 = T(-0.0387530245694763252085681443767620580395733302341368038804290)
  a2007 = T(-0.438313820361122420391059788940960176420682836652600698580091)
  a2009 = T(-0.218636633721676647685111485017151199362509373698288330593486)
  a2010 = T(-0.0312334764394719229981634995206440349766174759626578122323015)
  a2017 = T(0.0312334764394719229981634995206440349766174759626578122323015)
  a2018 = T(0.218636633721676647685111485017151199362509373698288330593486)
  a2019 = T(0.438313820361122420391059788940960176420682836652600698580091)

  a2100 = T(29//150)
  a2102 = T(11//50)
  a2103 = T(-2//25)
  a2106 = T(0.0984256130499315928152900286856048243348202521491288575952143)
  a2107 = T(-0.196410889223054653446526504390100417677539095340135532418849)
  a2109 = T(0.436457930493068729391826122587949137609670676712525034763317)
  a2110 = T(0.0652613721675721098560370939805555698350543810708414716730270)
  a2117 = T(-0.0652613721675721098560370939805555698350543810708414716730270)
  a2118 = T(-0.436457930493068729391826122587949137609670676712525034763317)
  a2119 = T(0.196410889223054653446526504390100417677539095340135532418849)
  a2120 = T(-0.0984256130499315928152900286856048243348202521491288575952143)

  a2200 = T(-0.216049382716049382716049382716049382716049382716049382716049)
  a2201 = T(0.771604938271604938271604938271604938271604938271604938271605)
  a2204 = T(-2//3)
  a2206 = T(-0.390696469295978451446999802258495981249099665294395945559163)
  a2220 = T(0.390696469295978451446999802258495981249099665294395945559163)
  a2221 = T(2//3)

  a2300 = T(1//5)
  a2302 = T(-0.164609053497942386831275720164609053497942386831275720164609)
  a2322 = T(0.164609053497942386831275720164609053497942386831275720164609)

  a2400 = T(1.47178724881110408452949550989023611293535315518571691939396)
  a2401 = T(63//80)
  a2402 = T(91//216)
  a2404 = T(7//24)
  a2406 = T(0.348600717628329563206854421629657569274689947367847465753757)
  a2407 = T(0.229499544768994849582890233710555447073823569666506700662510)
  a2408 = T(5.79046485790481979159831978177003471098279506036722411333192)
  a2409 = T(0.418587511856506868874073759426596207226461447604248151080016)
  a2410 = T(0.307039880222474002649653817490106690389251482313213999386651)
  a2411 = T(-4.68700905350603332214256344683853248065574415794742040470287)
  a2412 = T(3.13571665593802262152038152399873856554395436199962915429076)
  a2413 = T(1.40134829710965720817510506275620441055845017313930508348898)
  a2414 = T(-5.52931101439499023629010306005764336421276055777658156400910)
  a2415 = T(-0.853138235508063349309546894974784906188927508039552519557498)
  a2416 = T(0.103575780373610140411804607167772795518293914458500175573749)
  a2417 = T(-0.140474416950600941142546901202132534870665923700034957196546)
  a2418 = T(-0.418587511856506868874073759426596207226461447604248151080016)
  a2419 = T(-0.229499544768994849582890233710555447073823569666506700662510)
  a2420 = T(-0.348600717628329563206854421629657569274689947367847465753757)
  a2421 = T(-7//24)
  a2422 = T(-91//216)
  a2423 = T(-63//80)
  Feagin12ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1208,a1209,a1210,a1211,a1300,a1308,a1309,a1310,a1311,a1312,a1400,a1408,a1409,a1410,a1411,a1412,a1413,a1500,a1508,a1509,a1510,a1511,a1512,a1513,a1514,a1600,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,a1700,a1705,a1706,a1707,a1708,a1709,a1710,a1711,a1712,a1713,a1714,a1715,a1716,a1800,a1805,a1806,a1807,a1808,a1809,a1810,a1811,a1812,a1813,a1814,a1815,a1816,a1817,a1900,a1904,a1905,a1906,a1908,a1909,a1910,a1911,a1912,a1913,a1914,a1915,a1916,a1917,a1918,a2000,a2003,a2004,a2005,a2007,a2009,a2010,a2017,a2018,a2019,a2100,a2102,a2103,a2106,a2107,a2109,a2110,a2117,a2118,a2119,a2120,a2200,a2201,a2204,a2206,a2220,a2221,a2300,a2302,a2322,a2400,a2401,a2402,a2404,a2406,a2407,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2416,a2417,a2418,a2419,a2420,a2421,a2422,a2423,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23,c24,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,b24,b25)
end


"""
constructFeagin12

"""
function Feagin12ConstantCache(T::Type,T2::Type)
  adaptiveConst = T(49//640)
  c1 = T2(1//5)
  c2 = T2(5//9)
  c3 = T2(5//6)
  c4 = T2(1//3)
  c5 = T2(1)
  c6 = T2(parse(BigFloat,"0.671835709170513812712245661002797570438953420568682550710222"))
  c7 = T2(parse(BigFloat,"0.288724941110620201935458488967024976908118598341806976469674"))
  c8 = T2(9//16)
  c9 = T2(5//6)
  c10 = T2(parse(BigFloat,"0.947695431179199287562380162101836721649589325892740646458322"))
  c11 = T2(parse(BigFloat,"0.0548112876863802643887753674810754475842153612931128785028369"))
  c12 = T2(parse(BigFloat,"0.0848880518607165350639838930162674302064148175640019542045934"))
  c13 = T2(parse(BigFloat,"0.265575603264642893098114059045616835297201264164077621448665"))
  c14 = T2(1//2)
  c15 = T2(parse(BigFloat,"0.734424396735357106901885940954383164702798735835922378551335"))
  c16 = T2(parse(BigFloat,"0.915111948139283464936016106983732569793585182435998045795407"))
  c17 = T2(parse(BigFloat,"0.947695431179199287562380162101836721649589325892740646458322"))
  c18 = T2(5//6)
  c19 = T2(parse(BigFloat,"0.288724941110620201935458488967024976908118598341806976469674"))
  c20 = T2(parse(BigFloat,"0.671835709170513812712245661002797570438953420568682550710222"))
  c21 = T2(1//3)
  c22 = T2(5//9)
  c23 = T2(1//5)
  c24 = T2(1)

  b1  = T(1//42)
  b2  = T(234375//10000000)
  b3  = T(3125//100000)
  b4  = T(0)
  b5  = T(1//24)
  b6  = T(0)
  b7  = T(1//20)
  b8  = T(1//20)
  b9  = T(0)
  b10 = T(1//10)
  b11 = T(1//14)
  b12 = T(0)
  b13 = T(parse(BigFloat,"0.138413023680782974005350203145033146748813640089941234591267"))
  b14 = T(parse(BigFloat,"0.215872690604931311708935511140681138965472074195773051123019"))
  b15 = T(parse(BigFloat,"0.243809523809523809523809523809523809523809523809523809523810"))
  b16 = T(parse(BigFloat,"0.215872690604931311708935511140681138965472074195773051123019"))
  b17 = T(parse(BigFloat,"0.138413023680782974005350203145033146748813640089941234591267"))
  b18 = T(parse(BigFloat,"-0.0714285714285714285714285714285714285714285714285714285714286"))
  b19 = T(-1//10)
  b20 = T(-1//20)
  b21 = T(-1//20)
  b22 = T(-1//24)
  b23 = T(-3125//100000)
  b24 = T(-234375//10000000)
  b25 = T(1//42)

  a0100 = T(1//5)

  a0200 = T(parse(BigFloat,"-0.216049382716049382716049382716049382716049382716049382716049"))
  a0201 = T(parse(BigFloat,"0.771604938271604938271604938271604938271604938271604938271605"))

  a0300 = T(5//24)
  a0302 = T(5//8)

  a0400 = T(29//150)
  a0402 = T(11//50)
  a0403 = T(-2//25)

  a0500 = T(1//10)
  a0503 = T(2//5)
  a0504 = T(1//2)

  a0600 = T(parse(BigFloat,"0.103364471650010477570395435690481791543342708330349879244197"))
  a0603 = T(parse(BigFloat,"0.124053094528946761061581889237115328211074784955180298044074"))
  a0604 = T(parse(BigFloat,"0.483171167561032899288836480451962508724109257517289177302380"))
  a0605 = T(parse(BigFloat,"-0.0387530245694763252085681443767620580395733302341368038804290"))

  a0700 = T(parse(BigFloat,"0.124038261431833324081904585980175168140024670698633612292480"))
  a0704 = T(parse(BigFloat,"0.217050632197958486317846256953159942875916353757734167684657"))
  a0705 = T(parse(BigFloat,"0.0137455792075966759812907801835048190594443990939408530842918"))
  a0706 = T(parse(BigFloat,"-0.0661095317267682844455831341498149531672668252085016565917546"))

  a0800 = T(parse(BigFloat,"0.0914774894856882983144991846980432197088832099976660100090486"))
  a0805 = T(parse(BigFloat,"-0.00544348523717469689965754944144838611346156873847009178068318"))
  a0806 = T(parse(BigFloat,"0.0680716801688453518578515120895103863112751730758794372203952"))
  a0807 = T(parse(BigFloat,"0.408394315582641046727306852653894780093303185664924644551239"))

  a0900 = T(parse(BigFloat,"0.0890013652502551018954509355423841780143232697403434118692699"))
  a0905 = T(parse(BigFloat,"0.00499528226645532360197793408420692800405891149406814091955810"))
  a0906 = T(parse(BigFloat,"0.397918238819828997341739603001347156083435060931424970826304"))
  a0907 = T(parse(BigFloat,"0.427930210752576611068192608300897981558240730580396406312359"))
  a0908 = T(parse(BigFloat,"-0.0865117637557827005740277475955029103267246394128995965941585"))

  a1000 = T(parse(BigFloat,"0.0695087624134907543112693906409809822706021061685544615255758"))
  a1005 = T(parse(BigFloat,"0.129146941900176461970759579482746551122871751501482634045487"))
  a1006 = T(parse(BigFloat,"1.53073638102311295076342566143214939031177504112433874313011"))
  a1007 = T(parse(BigFloat,"0.577874761129140052546751349454576715334892100418571882718036"))
  a1008 = T(parse(BigFloat,"-0.951294772321088980532340837388859453930924498799228648050949"))
  a1009 = T(parse(BigFloat,"-0.408276642965631951497484981519757463459627174520978426909934"))

  a1100 = T(parse(BigFloat,"0.0444861403295135866269453507092463581620165501018684152933313"))
  a1105 = T(parse(BigFloat,"-0.00380476867056961731984232686574547203016331563626856065717964"))
  a1106 = T(parse(BigFloat,"0.0106955064029624200721262602809059154469206077644957399593972"))
  a1107 = T(parse(BigFloat,"0.0209616244499904333296674205928919920806734650660039898074652"))
  a1108 = T(parse(BigFloat,"-0.0233146023259321786648561431551978077665337818756053603898847"))
  a1109 = T(parse(BigFloat,"0.00263265981064536974369934736325334761174975280887405725010964"))
  a1110 = T(parse(BigFloat,"0.00315472768977025060103545855572111407955208306374459723959783"))

  a1200 = T(parse(BigFloat,"0.0194588815119755475588801096525317761242073762016273186231215"))
  a1208 = T(parse(BigFloat,"0.0000678512949171812509306121653452367476194364781259165332321534"))
  a1209 = T(parse(BigFloat,"-0.0000429795859049273623271005330230162343568863387724883603675550"))
  a1210 = T(parse(BigFloat,"0.0000176358982260285155407485928953302139937553442829975734148981"))
  a1211 = T(parse(BigFloat,"0.0653866627415027051009595231385181033549511358787382098351924"))

  a1300 = T(parse(BigFloat,"0.206836835664277105916828174798272361078909196043446411598231"))
  a1308 = T(parse(BigFloat,"0.0166796067104156472828045866664696450306326505094792505215514"))
  a1309 = T(parse(BigFloat,"-0.00879501563200710214457024178249986591130234990219959208704979"))
  a1310 = T(parse(BigFloat,"0.00346675455362463910824462315246379209427513654098596403637231"))
  a1311 = T(parse(BigFloat,"-0.861264460105717678161432562258351242030270498966891201799225"))
  a1312 = T(parse(BigFloat,"0.908651882074050281096239478469262145034957129939256789178785"))

  a1400 = T(parse(BigFloat,"0.0203926084654484010091511314676925686038504449562413004562382"))
  a1408 = T(parse(BigFloat,"0.0869469392016685948675400555583947505833954460930940959577347"))
  a1409 = T(parse(BigFloat,"-0.0191649630410149842286436611791405053287170076602337673587681"))
  a1410 = T(parse(BigFloat,"0.00655629159493663287364871573244244516034828755253746024098838"))
  a1411 = T(parse(BigFloat,"0.0987476128127434780903798528674033899738924968006632201445462"))
  a1412 = T(parse(BigFloat,"0.00535364695524996055083260173615567408717110247274021056118319"))
  a1413 = T(parse(BigFloat,"0.301167864010967916837091303817051676920059229784957479998077"))

  a1500 = T(parse(BigFloat,"0.228410433917778099547115412893004398779136994596948545722283"))
  a1508 = T(parse(BigFloat,"-0.498707400793025250635016567442511512138603770959682292383042"))
  a1509 = T(parse(BigFloat,"0.134841168335724478552596703792570104791700727205981058201689"))
  a1510 = T(parse(BigFloat,"-0.0387458244055834158439904226924029230935161059142806805674360"))
  a1511 = T(parse(BigFloat,"-1.27473257473474844240388430824908952380979292713250350199641"))
  a1512 = T(parse(BigFloat,"1.43916364462877165201184452437038081875299303577911839630524"))
  a1513 = T(parse(BigFloat,"-0.214007467967990254219503540827349569639028092344812795499026"))
  a1514 = T(parse(BigFloat,"0.958202417754430239892724139109781371059908874605153648768037"))

  a1600 = T(parse(BigFloat,"2.00222477655974203614249646012506747121440306225711721209798"))
  a1608 = T(parse(BigFloat,"2.06701809961524912091954656438138595825411859673341600679555"))
  a1609 = T(parse(BigFloat,"0.623978136086139541957471279831494466155292316167021080663140"))
  a1610 = T(parse(BigFloat,"-0.0462283685500311430283203554129062069391947101880112723185773"))
  a1611 = T(parse(BigFloat,"-8.84973288362649614860075246727118949286604835457092701094630"))
  a1612 = T(parse(BigFloat,"7.74257707850855976227437225791835589560188590785037197433615"))
  a1613 = T(parse(BigFloat,"-0.588358519250869210993353314127711745644125882130941202896436"))
  a1614 = T(parse(BigFloat,"-1.10683733362380649395704708016953056176195769617014899442903"))
  a1615 = T(parse(BigFloat,"-0.929529037579203999778397238291233214220788057511899747507074"))

  a1700 = T(parse(BigFloat,"3.13789533412073442934451608989888796808161259330322100268310"))
  a1705 = T(parse(BigFloat,"0.129146941900176461970759579482746551122871751501482634045487"))
  a1706 = T(parse(BigFloat,"1.53073638102311295076342566143214939031177504112433874313011"))
  a1707 = T(parse(BigFloat,"0.577874761129140052546751349454576715334892100418571882718036"))
  a1708 = T(parse(BigFloat,"5.42088263055126683050056840891857421941300558851862156403363"))
  a1709 = T(parse(BigFloat,"0.231546926034829304872663800877643660904880180835945693836936"))
  a1710 = T(parse(BigFloat,"0.0759292995578913560162301311785251873561801342333194895292058"))
  a1711 = T(parse(BigFloat,"-12.3729973380186513287414553402595806591349822617535905976253"))
  a1712 = T(parse(BigFloat,"9.85455883464769543935957209317369202080367765721777101906955"))
  a1713 = T(parse(BigFloat,"0.0859111431370436529579357709052367772889980495122329601159540"))
  a1714 = T(parse(BigFloat,"-5.65242752862643921117182090081762761180392602644189218673969"))
  a1715 = T(parse(BigFloat,"-1.94300935242819610883833776782364287728724899124166920477873"))
  a1716 = T(parse(BigFloat,"-0.128352601849404542018428714319344620742146491335612353559923"))

  a1800 = T(parse(BigFloat,"1.38360054432196014878538118298167716825163268489922519995564"))
  a1805 = T(parse(BigFloat,"0.00499528226645532360197793408420692800405891149406814091955810"))
  a1806 = T(parse(BigFloat,"0.397918238819828997341739603001347156083435060931424970826304"))
  a1807 = T(parse(BigFloat,"0.427930210752576611068192608300897981558240730580396406312359"))
  a1808 = T(parse(BigFloat,"-1.30299107424475770916551439123047573342071475998399645982146"))
  a1809 = T(parse(BigFloat,"0.661292278669377029097112528107513072734573412294008071500699"))
  a1810 = T(parse(BigFloat,"-0.144559774306954349765969393688703463900585822441545655530145"))
  a1811 = T(parse(BigFloat,"-6.96576034731798203467853867461083919356792248105919255460819"))
  a1812 = T(parse(BigFloat,"6.65808543235991748353408295542210450632193197576935120716437"))
  a1813 = T(parse(BigFloat,"-1.66997375108841486404695805725510845049807969199236227575796"))
  a1814 = T(parse(BigFloat,"2.06413702318035263832289040301832647130604651223986452170089"))
  a1815 = T(parse(BigFloat,"-0.674743962644306471862958129570837723192079875998405058648892"))
  a1816 = T(parse(BigFloat,"-0.00115618834794939500490703608435907610059605754935305582045729"))
  a1817 = T(parse(BigFloat,"-0.00544057908677007389319819914241631024660726585015012485938593"))

  a1900 = T(parse(BigFloat,"0.951236297048287669474637975894973552166903378983475425758226"))
  a1904 = T(parse(BigFloat,"0.217050632197958486317846256953159942875916353757734167684657"))
  a1905 = T(parse(BigFloat,"0.0137455792075966759812907801835048190594443990939408530842918"))
  a1906 = T(parse(BigFloat,"-0.0661095317267682844455831341498149531672668252085016565917546"))
  a1908 = T(parse(BigFloat,"0.152281696736414447136604697040747131921486432699422112099617"))
  a1909 = T(parse(BigFloat,"-0.337741018357599840802300793133998004354643424457539667670080"))
  a1910 = T(parse(BigFloat,"-0.0192825981633995781534949199286824400469353110630787982121133"))
  a1911 = T(parse(BigFloat,"-3.68259269696866809932409015535499603576312120746888880201882"))
  a1912 = T(parse(BigFloat,"3.16197870406982063541533528419683854018352080342887002331312"))
  a1913 = T(parse(BigFloat,"-0.370462522106885290716991856022051125477943482284080569177386"))
  a1914 = T(parse(BigFloat,"-0.0514974200365440434996434456698127984941168616474316871020314"))
  a1915 = T(parse(BigFloat,"-0.000829625532120152946787043541792848416659382675202720677536554"))
  a1916 = T(parse(BigFloat,"0.00000279801041419278598986586589070027583961355402640879503213503"))
  a1917 = T(parse(BigFloat,"0.0418603916412360287969841020776788461794119440689356178942252"))
  a1918 = T(parse(BigFloat,"0.279084255090877355915660874555379649966282167560126269290222"))

  a2000 = T(parse(BigFloat,"0.103364471650010477570395435690481791543342708330349879244197"))
  a2003 = T(parse(BigFloat,"0.124053094528946761061581889237115328211074784955180298044074"))
  a2004 = T(parse(BigFloat,"0.483171167561032899288836480451962508724109257517289177302380"))
  a2005 = T(parse(BigFloat,"-0.0387530245694763252085681443767620580395733302341368038804290"))
  a2007 = T(parse(BigFloat,"-0.438313820361122420391059788940960176420682836652600698580091"))
  a2009 = T(parse(BigFloat,"-0.218636633721676647685111485017151199362509373698288330593486"))
  a2010 = T(parse(BigFloat,"-0.0312334764394719229981634995206440349766174759626578122323015"))
  a2017 = T(parse(BigFloat,"0.0312334764394719229981634995206440349766174759626578122323015"))
  a2018 = T(parse(BigFloat,"0.218636633721676647685111485017151199362509373698288330593486"))
  a2019 = T(parse(BigFloat,"0.438313820361122420391059788940960176420682836652600698580091"))

  a2100 = T(29//150)
  a2102 = T(11//50)
  a2103 = T(-2//25)
  a2106 = T(parse(BigFloat,"0.0984256130499315928152900286856048243348202521491288575952143"))
  a2107 = T(parse(BigFloat,"-0.196410889223054653446526504390100417677539095340135532418849"))
  a2109 = T(parse(BigFloat,"0.436457930493068729391826122587949137609670676712525034763317"))
  a2110 = T(parse(BigFloat,"0.0652613721675721098560370939805555698350543810708414716730270"))
  a2117 = T(parse(BigFloat,"-0.0652613721675721098560370939805555698350543810708414716730270"))
  a2118 = T(parse(BigFloat,"-0.436457930493068729391826122587949137609670676712525034763317"))
  a2119 = T(parse(BigFloat,"0.196410889223054653446526504390100417677539095340135532418849"))
  a2120 = T(parse(BigFloat,"-0.0984256130499315928152900286856048243348202521491288575952143"))

  a2200 = T(parse(BigFloat,"-0.216049382716049382716049382716049382716049382716049382716049"))
  a2201 = T(parse(BigFloat,"0.771604938271604938271604938271604938271604938271604938271605"))
  a2204 = T(-2//3)
  a2206 = T(parse(BigFloat,"-0.390696469295978451446999802258495981249099665294395945559163"))
  a2220 = T(parse(BigFloat,"0.390696469295978451446999802258495981249099665294395945559163"))
  a2221 = T(2//3)

  a2300 = T(1//5)
  a2302 = T(parse(BigFloat,"-0.164609053497942386831275720164609053497942386831275720164609"))
  a2322 = T(parse(BigFloat,"0.164609053497942386831275720164609053497942386831275720164609"))

  a2400 = T(parse(BigFloat,"1.47178724881110408452949550989023611293535315518571691939396"))
  a2401 = T(63//80)
  a2402 = T(91//216)
  a2404 = T(7//24)
  a2406 = T(parse(BigFloat,"0.348600717628329563206854421629657569274689947367847465753757"))
  a2407 = T(parse(BigFloat,"0.229499544768994849582890233710555447073823569666506700662510"))
  a2408 = T(parse(BigFloat,"5.79046485790481979159831978177003471098279506036722411333192"))
  a2409 = T(parse(BigFloat,"0.418587511856506868874073759426596207226461447604248151080016"))
  a2410 = T(parse(BigFloat,"0.307039880222474002649653817490106690389251482313213999386651"))
  a2411 = T(parse(BigFloat,"-4.68700905350603332214256344683853248065574415794742040470287"))
  a2412 = T(parse(BigFloat,"3.13571665593802262152038152399873856554395436199962915429076"))
  a2413 = T(parse(BigFloat,"1.40134829710965720817510506275620441055845017313930508348898"))
  a2414 = T(parse(BigFloat,"-5.52931101439499023629010306005764336421276055777658156400910"))
  a2415 = T(parse(BigFloat,"-0.853138235508063349309546894974784906188927508039552519557498"))
  a2416 = T(parse(BigFloat,"0.103575780373610140411804607167772795518293914458500175573749"))
  a2417 = T(parse(BigFloat,"-0.140474416950600941142546901202132534870665923700034957196546"))
  a2418 = T(parse(BigFloat,"-0.418587511856506868874073759426596207226461447604248151080016"))
  a2419 = T(parse(BigFloat,"-0.229499544768994849582890233710555447073823569666506700662510"))
  a2420 = T(parse(BigFloat,"-0.348600717628329563206854421629657569274689947367847465753757"))
  a2421 = T(-7//24)
  a2422 = T(-91//216)
  a2423 = T(-63//80)
  Feagin12ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1208,a1209,a1210,a1211,a1300,a1308,a1309,a1310,a1311,a1312,a1400,a1408,a1409,a1410,a1411,a1412,a1413,a1500,a1508,a1509,a1510,a1511,a1512,a1513,a1514,a1600,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,a1700,a1705,a1706,a1707,a1708,a1709,a1710,a1711,a1712,a1713,a1714,a1715,a1716,a1800,a1805,a1806,a1807,a1808,a1809,a1810,a1811,a1812,a1813,a1814,a1815,a1816,a1817,a1900,a1904,a1905,a1906,a1908,a1909,a1910,a1911,a1912,a1913,a1914,a1915,a1916,a1917,a1918,a2000,a2003,a2004,a2005,a2007,a2009,a2010,a2017,a2018,a2019,a2100,a2102,a2103,a2106,a2107,a2109,a2110,a2117,a2118,a2119,a2120,a2200,a2201,a2204,a2206,a2220,a2221,a2300,a2302,a2322,a2400,a2401,a2402,a2404,a2406,a2407,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2416,a2417,a2418,a2419,a2420,a2421,a2422,a2423,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23,c24,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,b24,b25)
end

struct Feagin14ConstantCache{T,T2} <: OrdinaryDiffEqConstantCache
  adaptiveConst::T
  a0100::T
  a0200::T
  a0201::T
  a0300::T
  a0302::T
  a0400::T
  a0402::T
  a0403::T
  a0500::T
  a0503::T
  a0504::T
  a0600::T
  a0603::T
  a0604::T
  a0605::T
  a0700::T
  a0704::T
  a0705::T
  a0706::T
  a0800::T
  a0805::T
  a0806::T
  a0807::T
  a0900::T
  a0905::T
  a0906::T
  a0907::T
  a0908::T
  a1000::T
  a1005::T
  a1006::T
  a1007::T
  a1008::T
  a1009::T
  a1100::T
  a1105::T
  a1106::T
  a1107::T
  a1108::T
  a1109::T
  a1110::T
  a1200::T
  a1208::T
  a1209::T
  a1210::T
  a1211::T
  a1300::T
  a1308::T
  a1309::T
  a1310::T
  a1311::T
  a1312::T
  a1400::T
  a1408::T
  a1409::T
  a1410::T
  a1411::T
  a1412::T
  a1413::T
  a1500::T
  a1508::T
  a1509::T
  a1510::T
  a1511::T
  a1512::T
  a1513::T
  a1514::T
  a1600::T
  a1608::T
  a1609::T
  a1610::T
  a1611::T
  a1612::T
  a1613::T
  a1614::T
  a1615::T
  a1700::T
  a1712::T
  a1713::T
  a1714::T
  a1715::T
  a1716::T
  a1800::T
  a1812::T
  a1813::T
  a1814::T
  a1815::T
  a1816::T
  a1817::T
  a1900::T
  a1912::T
  a1913::T
  a1914::T
  a1915::T
  a1916::T
  a1917::T
  a1918::T
  a2000::T
  a2012::T
  a2013::T
  a2014::T
  a2015::T
  a2016::T
  a2017::T
  a2018::T
  a2019::T
  a2100::T
  a2112::T
  a2113::T
  a2114::T
  a2115::T
  a2116::T
  a2117::T
  a2118::T
  a2119::T
  a2120::T
  a2200::T
  a2212::T
  a2213::T
  a2214::T
  a2215::T
  a2216::T
  a2217::T
  a2218::T
  a2219::T
  a2220::T
  a2221::T
  a2300::T
  a2308::T
  a2309::T
  a2310::T
  a2311::T
  a2312::T
  a2313::T
  a2314::T
  a2315::T
  a2316::T
  a2317::T
  a2318::T
  a2319::T
  a2320::T
  a2321::T
  a2322::T
  a2400::T
  a2408::T
  a2409::T
  a2410::T
  a2411::T
  a2412::T
  a2413::T
  a2414::T
  a2415::T
  a2416::T
  a2417::T
  a2418::T
  a2419::T
  a2420::T
  a2421::T
  a2422::T
  a2423::T
  a2500::T
  a2508::T
  a2509::T
  a2510::T
  a2511::T
  a2512::T
  a2513::T
  a2514::T
  a2515::T
  a2516::T
  a2517::T
  a2518::T
  a2519::T
  a2520::T
  a2521::T
  a2522::T
  a2523::T
  a2524::T
  a2600::T
  a2605::T
  a2606::T
  a2607::T
  a2608::T
  a2609::T
  a2610::T
  a2612::T
  a2613::T
  a2614::T
  a2615::T
  a2616::T
  a2617::T
  a2618::T
  a2619::T
  a2620::T
  a2621::T
  a2622::T
  a2623::T
  a2624::T
  a2625::T
  a2700::T
  a2705::T
  a2706::T
  a2707::T
  a2708::T
  a2709::T
  a2711::T
  a2712::T
  a2713::T
  a2714::T
  a2715::T
  a2716::T
  a2717::T
  a2718::T
  a2719::T
  a2720::T
  a2721::T
  a2722::T
  a2723::T
  a2724::T
  a2725::T
  a2726::T
  a2800::T
  a2805::T
  a2806::T
  a2807::T
  a2808::T
  a2810::T
  a2811::T
  a2813::T
  a2814::T
  a2815::T
  a2823::T
  a2824::T
  a2825::T
  a2826::T
  a2827::T
  a2900::T
  a2904::T
  a2905::T
  a2906::T
  a2909::T
  a2910::T
  a2911::T
  a2913::T
  a2914::T
  a2915::T
  a2923::T
  a2924::T
  a2925::T
  a2926::T
  a2927::T
  a2928::T
  a3000::T
  a3003::T
  a3004::T
  a3005::T
  a3007::T
  a3009::T
  a3010::T
  a3013::T
  a3014::T
  a3015::T
  a3023::T
  a3024::T
  a3025::T
  a3027::T
  a3028::T
  a3029::T
  a3100::T
  a3102::T
  a3103::T
  a3106::T
  a3107::T
  a3109::T
  a3110::T
  a3113::T
  a3114::T
  a3115::T
  a3123::T
  a3124::T
  a3125::T
  a3127::T
  a3128::T
  a3129::T
  a3130::T
  a3200::T
  a3201::T
  a3204::T
  a3206::T
  a3230::T
  a3231::T
  a3300::T
  a3302::T
  a3332::T
  a3400::T
  a3401::T
  a3402::T
  a3404::T
  a3406::T
  a3407::T
  a3409::T
  a3410::T
  a3411::T
  a3412::T
  a3413::T
  a3414::T
  a3415::T
  a3416::T
  a3417::T
  a3418::T
  a3419::T
  a3420::T
  a3421::T
  a3422::T
  a3423::T
  a3424::T
  a3425::T
  a3426::T
  a3427::T
  a3428::T
  a3429::T
  a3430::T
  a3431::T
  a3432::T
  a3433::T
  c1::T2
  c2::T2
  c3::T2
  c4::T2
  c5::T2
  c6::T2
  c7::T2
  c8::T2
  c9::T2
  c10::T2
  c11::T2
  c12::T2
  c13::T2
  c14::T2
  c15::T2
  c16::T2
  c17::T2
  c18::T2
  c19::T2
  c20::T2
  c21::T2
  c22::T2
  c23::T2
  c24::T2
  c25::T2
  c26::T2
  c27::T2
  c28::T2
  c29::T2
  c30::T2
  c31::T2
  c32::T2
  c33::T2
  c34::T2
  b1::T
  b2::T
  b3::T
  b4::T
  b5::T
  b6::T
  b7::T
  b8::T
  b9::T
  b10::T
  b11::T
  b12::T
  b13::T
  b14::T
  b15::T
  b16::T
  b17::T
  b18::T
  b19::T
  b20::T
  b21::T
  b22::T
  b23::T
  b24::T
  b25::T
  b26::T
  b27::T
  b28::T
  b29::T
  b30::T
  b31::T
  b32::T
  b33::T
  b34::T
  b35::T
end

"""
constructFeagin14

"""
Base.@pure function Feagin14ConstantCache{T<:CompiledFloats,T2<:CompiledFloats}(::Type{T},::Type{T2})
  adaptiveConst = T(1//1000)
  c1 = T2(1//9)
  c2 = T2(5//9)
  c3 = T2(5//6)
  c4 = T2(1//3)
  c5 = T2(1)
  c6 = T2(0.669986979272772921764683785505998513938845229638460353285142)
  c7 = T2(0.297068384213818357389584716808219413223332094698915687379168)
  c8 = T2(8//11)
  c9 = T2(0.140152799042188765276187487966946717629806463082532936287323)
  c10 = T2(0.700701039770150737151099854830749337941407049265546408969222)
  c11 = T2(4//11)
  c12 = T2(0.263157894736842105263157894736842105263157894736842105263158)
  c13 = T2(0.0392172246650270859125196642501208648863714315266128052078483)
  c14 = T2(0.812917502928376762983393159278036506189612372617238550774312)
  c15 = T2(1//6)
  c16 = T2(9//10)
  c17 = T2(0.0641299257451966923312771193896682809481096651615083225402924)
  c18 = T2(0.204149909283428848927744634301023405027149505241333751628870)
  c19 = T2(0.395350391048760565615671369827324372352227297456659450554577)
  c20 = T2(0.604649608951239434384328630172675627647772702543340549445423)
  c21 = T2(0.795850090716571151072255365698976594972850494758666248371130)
  c22 = T2(0.935870074254803307668722880610331719051890334838491677459708)
  c23 = T2(1//6)
  c24 = T2(0.812917502928376762983393159278036506189612372617238550774312)
  c25 = T2(0.0392172246650270859125196642501208648863714315266128052078483)
  c26 = T2(4//11)
  c27 = T2(0.700701039770150737151099854830749337941407049265546408969222)
  c28 = T2(0.140152799042188765276187487966946717629806463082532936287323)
  c29 = T2(0.297068384213818357389584716808219413223332094698915687379168)
  c30 = T2(0.669986979272772921764683785505998513938845229638460353285142)
  c31 = T2(1//3)
  c32 = T2(5//9)
  c33 = T2(1//9)
  c34 = T2(1)

  b1  = T(1//56)
  b2  = T(3//512)
  b3  = T(3//256)
  b4  = T(0)
  b5  = T(9//512)
  b6  = T(0)
  b7  = T(3//128)
  b8  = T(15//512)
  b9  = T(0)
  b10 = T(9//256)
  b11 = T(21//512)
  b12 = T(3//64)
  b13 = T(0)
  b14 = T(27//512)
  b15 = T(15//256)
  b16 = T(33//512)
  b17 = T(0)
  b18 = T(0.105352113571753019691496032887878162227673083080523884041670)
  b19 = T(0.170561346241752182382120338553874085887555487802790804737501)
  b20 = T(0.206229397329351940783526485701104894741914286259542454077972)
  b21 = T(0.206229397329351940783526485701104894741914286259542454077972)
  b22 = T(0.170561346241752182382120338553874085887555487802790804737501)
  b23 = T(0.105352113571753019691496032887878162227673083080523884041670)
  b24 = T(-33//512)
  b25 = T(-15//256)
  b26 = T(-27//512)
  b27 = T(-3//64)
  b28 = T(-21//512)
  b29 = T(-9//256)
  b30 = T(-15//512)
  b31 = T(-3//128)
  b32 = T(-9//512)
  b33 = T(-3//256)
  b34 = T(-3//512)
  b35 = T(1//56)

     a0100 = T(1//9)

     a0200 = T(-5//6)
     a0201 = T(25//18)

     a0300 = T(5//24)
     a0302 = T(5//8)

     a0400 = T(29//150)
     a0402 = T(11//50)
     a0403 = T(-2//25)

     a0500 = T(1//10)
     a0503 = T(2//5)
     a0504 = T(1//2)

     a0600 = T(0.103484561636679776672993546511910344499744798201971316606663)
     a0603 = T(0.122068887306407222589644082868962077139592714834162134741275)
     a0604 = T(0.482574490331246622475134780125688112865919023850168049679402)
     a0605 = T(-0.0381409600015606999730886240005620205664113072478411477421970)

     a0700 = T(0.124380526654094412881516420868799316268491466359671423163289)
     a0704 = T(0.226120282197584301422238662979202901196752320742633143965145)
     a0705 = T(0.0137885887618080880607695837016477814530969417491493385363543)
     a0706 = T(-0.0672210133996684449749399507414305856950086341525382182856200)
     a0800 = T(0.0936919065659673815530885456083005933866349695217750085655603)
     a0805 = T(-0.00613406843450510987229498995641664735620914507128858871007099)
     a0806 = T(0.216019825625503063708860097659866573490979433278117320188668)
     a0807 = T(0.423695063515761937337619073960976753205867469544123532683116)


     a0900 = T(0.0838479812409052664616968791372814085980533139224911131069335)
     a0905 = T(-0.0117949367100973814319755056031295775367961960590736150777613)
     a0906 = T(-0.247299020568812652339473838743194598325992840353340132697498)
     a0907 = T(0.0978080858367729012259313014081291665503740655476733940756599)
     a0908 = T(0.217590689243420631360008651767860318344168120024782176879989)

     a1000 = T(0.0615255359769428227954562389614314714333423969064821107453940)
     a1005 = T(0.00592232780324503308042990005798046524738389560444257136834990)
     a1006 = T(0.470326159963841112217224303205894113455362530746108825010848)
     a1007 = T(0.299688863848679000853981837096192399136831121671781279184194)
     a1008 = T(-0.247656877593994914689992276329810825853958069263947095548189)
     a1009 = T(0.110895029771437682893999851839061714522445173600678718208625)

     a1100 = T(0.0419700073362782579861792864787277787213483656543104611245994)
     a1105 = T(-0.00317987696266205093901912847692712407988609169703103952205634)
     a1106 = T(0.806397714906192077260821711520379506393543111567419750119748)
     a1107 = T(0.0975983126412388979093522850684288851314672048003054550357187)
     a1108 = T(0.778575578158398909027512446452927238999763460594181964958853)
     a1109 = T(0.204890423831599428189499202098105603312029235081420653574829)
     a1110 = T(-1.56261579627468188307070943950527825211462892236424360892806)

     a1200 = T(0.0437726782233730163574465242495339811688214967071614123256973)
     a1208 = T(0.00624365027520195208794358628580933625281631216903095917201250)
     a1209 = T(0.200043097109577314994435165469647856829066232218264969608768)
     a1210 = T(-0.00805328367804983036823857162048902911923392887337029314844206)
     a1211 = T(0.0211517528067396521915711903523399601316877825157550573051221)

     a1300 = T(0.0283499250363514563095023591920717312247137654896477097768495)
     a1308 = T(0.00249163204855817407538949148805995149459884653585417680098222)
     a1309 = T(0.0230138787854593149638399846373742768772087122638142234223658)
     a1310 = T(-0.00322155956692977098724476092467120878189463604760620461043308)
     a1311 = T(0.00988442549447664668946335414487885256040819982786014648129297)
     a1312 = T(-0.0213010771328887351384307642875927384886634565429572466632092)

     a1400 = T(0.343511894290243001049432234735147943083353174980701426268122)
     a1408 = T(0.210451912023627385609097011999010655788807405225626700040882)
     a1409 = T(1.03427452057230411936482926828825709938667999698324740166559)
     a1410 = T(0.00600303645864422487051240448206640574939078092406156945568306)
     a1411 = T(0.855938125099619537578012106002407728915062652616416005816477)
     a1412 = T(-0.977235005036766810872264852372525633013107656892839677696022)
     a1413 = T(-0.660026980479294694616225013856327693720573981219974874776419)

     a1500 = T(-0.0143574001672168069538206399935076366657755954378399880691949)
     a1508 = T(-0.0366253270049039970293685796848974791733119081733552207318285)
     a1509 = T(0.0350254975636213681976849406979846524346789082471103574920148)
     a1510 = T(0.0360946016362113508931786658758335239823689929864237671348749)
     a1511 = T(-0.0265219967553681106351595946834601923649627012457464284442911)
     a1512 = T(0.0445699011305698119638911537508839908104336323082226770910408)
     a1513 = T(0.124343093331358243286225595741786448038973408895106741855721)
     a1514 = T(0.00413829693239480694403512496204335960426192908674476033832967)

     a1600 = T(0.356032404425120290975609116398089176264106222379748802654822)
     a1608 = T(-0.450192758947562595966821779075956175110645100214763601190349)
     a1609 = T(0.430527907083710898626656292808782917793030154094709462877146)
     a1610 = T(0.511973029011022237668556960394071692077125787030651386389972)
     a1611 = T(0.908303638886404260390159124638110213997496214819904630546596)
     a1612 = T(-1.23921093371933931757372469151534028854413889248605726186520)
     a1613 = T(-0.649048661671761465141672348879062553905402831967191097656668)
     a1614 = T(0.251708904586819292210480529948970541404887852931447491219418)
     a1615 = T(0.779906470345586398810756795282334476023540593411550187024263)

     a1700 = T(0.0130935687406513066406881206418834980127470438213192487844956)
     a1712 = T(-0.0000932053067985113945908461962767108237858631509684667142124826)
     a1713 = T(0.0505374334262299359640090443138590726770942344716122381702746)
     a1714 = T(8.04470341944487979109579109610197797641311868930865361048975e-7)
     a1715 = T(0.000591726029494171190528755742777717259844340971924321528178248)
     a1716 = T(-4.01614722154557337064691684906375587732264247950093804676867e-7)

     a1800 = T(0.0207926484466053012541944544000765652167255206144373407979758)
     a1812 = T(0.000582695918800085915101902697837284108951406103029871570103075)
     a1813 = T(-0.00801700732358815939083342186525852746640558465919633524655451)
     a1814 = T(4.03847643847136940375170821743560570484117290330895506618968e-6)
     a1815 = T(0.0854609998055506144225056114567535602510114622033622491802597)
     a1816 = T(-2.04486480935804242706707569691004307904442837552677456232848e-6)
     a1817 = T(0.105328578824431893399799402979093997354240904235172843146582)


     a1900 = T(1.40153449795736021415446247355771306718486452917597731683689)
     a1912 = T(-0.230252000984221261616272410367415621261130298274455611733277)
     a1913 = T(-7.21106840466912905659582237106874247165856493509961561958267)
     a1914 = T(0.00372901560694836335236995327852132340217759566678662385552634)
     a1915 = T(-4.71415495727125020678778179392224757011323373221820091641216)
     a1916 = T(-0.00176367657545349242053841995032797673574903886695600132759652)
     a1917 = T(7.64130548038698765563029310880237651185173367813936997648198)
     a1918 = T(3.50602043659751834989896082949744710968212949893375368243588)

     a2000 = T(11.9514650694120686799372385830716401674473610826553517297976)
     a2012 = T(7.79480932108175968783516700231764388220284279598980948538579)
     a2013 = T(-56.4501393867325792523560991120904281440468100061340556540132)
     a2014 = T(0.0912376306930644901344530449290276645709607450403673704844997)
     a2015 = T(-12.7336279925434886201945524309199275038162717529918963305155)
     a2016 = T(-0.0396895921904719712313542810939736674712383070433147873009352)
     a2017 = T(54.4392141883570886996225765155307791861438378423305337073797)
     a2018 = T(-3.64411637921569236846406990361350645806721478409266709351203)
     a2019 = T(-0.804503249910509910899030787958579499315694913210787878260459)

     a2100 = T(-148.809426507100488427838868268647625561930612082148597076690)
     a2112 = T(-91.7295278291256484357935662402321623495228729036354276506427)
     a2113 = T(707.656144971598359834575719286335716154821128966649565194286)
     a2114 = T(-1.10563611857482440905296961311590930801338308942637769555540)
     a2115 = T(176.134591883811372587859898076055660406999516762301689616841)
     a2116 = T(0.491384824214880662268898345164454557416884631402764792538746)
     a2117 = T(-684.278000449814944358237535610895081956077167893600278300805)
     a2118 = T(27.9910604998398258984224332124380407446002518400668657974589)
     a2119 = T(13.1939710030282333443670964371153238435064159623744975073252)
     a2120 = T(1.25128781283980445450114974148056006317268830077396406361417)

     a2200 = T(-9.67307946948196763644126118433219395839951408571877262880482)
     a2212 = T(-4.46990150858505531443846227701960360497830681408751431146712)
     a2213 = T(45.5127128690952681968241950400052751178905907817398483534845)
     a2214 = T(-0.0713085086183826912791492024438246129930559805352394367050813)
     a2215 = T(11.2273614068412741582590624479939384207826800776794485051540)
     a2216 = T(0.126244376717622724516237912909138809361786889819105426371393)
     a2217 = T(-43.5439339549483313605810624907242107623814304467621407753424)
     a2218 = T(0.787174307543058978398792994996550902064546091443233850464377)
     a2219 = T(0.532264696744684215669300708603886690785395776821503851830821)
     a2220 = T(0.422422733996325326010225127471388772575086538809603346825334)
     a2221 = T(0.0859131249503067107308438031499859443441115056294154956487671)

     a2300 = T(-10.0664032447054702403396606900426891472202824757968765569183)
     a2308 = T(-0.0366253270049039970293685796848974791733119081733552207318285)
     a2309 = T(0.0350254975636213681976849406979846524346789082471103574920148)
     a2310 = T(0.0360946016362113508931786658758335239823689929864237671348749)
     a2311 = T(-0.0265219967553681106351595946834601923649627012457464284442911)
     a2312 = T(-6.27088972181464143590553149478871603839356122957396018530209)
     a2313 = T(48.2079237442562989090702103008195063923492593141636117832993)
     a2314 = T(-0.0694471689136165640882395180583732834557754169149088630301342)
     a2315 = T(12.6810690204850295698341370913609807066108483811412127009785)
     a2316 = T(0.0119671168968323754838161435501011294100927813964199613229864)
     a2317 = T(-46.7249764992482408003358268242662695593201321659795608950429)
     a2318 = T(1.33029613326626711314710039298216591399033511191227101321435)
     a2319 = T(1.00766787503398298353438903619926657771162717793661719708370)
     a2320 = T(0.0209512051933665091664122388475480702892770753864487241177616)
     a2321 = T(0.0210134706331264177317735424331396407424412188443757490871603)
     a2322 = T(0.00952196014417121794175101542454575907376360233658356240547761)

     a2400 = T(-409.478081677743708772589097409370357624424341606752069725341)
     a2408 = T(0.210451912023627385609097011999010655788807405225626700040882)
     a2409 = T(1.03427452057230411936482926828825709938667999698324740166559)
     a2410 = T(0.00600303645864422487051240448206640574939078092406156945568306)
     a2411 = T(0.855938125099619537578012106002407728915062652616416005816477)
     a2412 = T(-250.516998547447860492777657729316130386584050420782075966990)
     a2413 = T(1946.42466652388427766053750328264758595829850895761428240231)
     a2414 = T(-3.04503882102310365506105809086860882786950544097602101685174)
     a2415 = T(490.626379528281713521208265299168083841598542274061671576230)
     a2416 = T(1.56647589531270907115484067013597445739595615245966775329993)
     a2417 = T(-1881.97428994011173362217267377035870619215906638453056643641)
     a2418 = T(75.2592224724847175278837713643303149821620618914245864351135)
     a2419 = T(34.5734356980331067622434344736554689696728644793551014989002)
     a2420 = T(3.21147679440968961435417361847073755169022966748891627882572)
     a2421 = T(-0.460408041738414391307201404237058848867245095265382820823055)
     a2422 = T(-0.0870718339841810522431884137957986245724252047388936572215438)
     a2423 = T(-7.39351814158303067567016952195521063999185773249132944724553)

     a2500 = T(3.43347475853550878921093496257596781120623891072008459930197)
     a2508 = T(0.00249163204855817407538949148805995149459884653585417680098222)
     a2509 = T(0.0230138787854593149638399846373742768772087122638142234223658)
     a2510 = T(-0.00322155956692977098724476092467120878189463604760620461043308)
     a2511 = T(0.00988442549447664668946335414487885256040819982786014648129297)
     a2512 = T(2.16252799377922507788307841904757354045759225335732707916530)
     a2513 = T(-16.2699864546457421328065640660139489006987552040228852402716)
     a2514 = T(-0.128534502120524552843583417470935010538029037542654506231743)
     a2515 = T(-8.98915042666504253089307820833379330486511746063552853023189)
     a2516 = T(-0.00348595363232025333387080201851013650192401767250513765000963)
     a2517 = T(15.7936194113339807536235187388695574135853387025139738341334)
     a2518 = T(-0.574403330914095065628165482017335820148383663195675408024658)
     a2519 = T(-0.345602039021393296692722496608124982535237228827655306030152)
     a2520 = T(-0.00662241490206585091731619991383757781133067992707418687587487)
     a2521 = T(-0.00777788129242204164032546458607364309759347209626759111946150)
     a2522 = T(-0.00356084192402274913338827232697437364675240818791706587952939)
     a2523 = T(4.79282506449930799649797749629840189457296934139359048988332)
     a2524 = T(0.153725464873068577844576387402512082757034273069877432944621)

     a2600 = T(32.3038520871985442326994734440031535091364975047784630088983)
     a2605 = T(-0.00317987696266205093901912847692712407988609169703103952205634)
     a2606 = T(0.806397714906192077260821711520379506393543111567419750119748)
     a2607 = T(0.0975983126412388979093522850684288851314672048003054550357187)
     a2608 = T(0.778575578158398909027512446452927238999763460594181964958853)
     a2609 = T(0.204890423831599428189499202098105603312029235081420653574829)
     a2610 = T(-1.56261579627468188307070943950527825211462892236424360892806)
     a2612 = T(16.3429891882310570648504243973927174708753353504154550405647)
     a2613 = T(-154.544555293543621230730189631471036399316683669609116705323)
     a2614 = T(1.56971088703334872692034283417621761466263593582497085955201)
     a2615 = T(3.27685545087248131321429817269900731165522404974733504794135)
     a2616 = T(-0.0503489245193653176348040727199783626534081095691632396802451)
     a2617 = T(153.321151858041665070593767885914694011224363102594556731397)
     a2618 = T(7.17568186327720495846766484814784143567826308034865369443637)
     a2619 = T(-2.94036748675300481945917659896930989215320594380777597403592)
     a2620 = T(-0.0665845946076803144470749676022628870281920493197256887985612)
     a2621 = T(-0.0462346054990843661229248668562217261176966514016859284197145)
     a2622 = T(-0.0204198733585679401539388228617269778848579774821581777675337)
     a2623 = T(-53.3523106438735850515953441165998107974045090495791591218714)
     a2624 = T(-1.35548714715078654978732186705996404017554501614191325114947)
     a2625 = T(-1.57196275801232751882901735171459249177687219114442583461866)

     a2700 = T(-16.6451467486341512872031294403931758764560371130818978459405)
     a2705 = T(0.00592232780324503308042990005798046524738389560444257136834990)
     a2706 = T(0.470326159963841112217224303205894113455362530746108825010848)
     a2707 = T(0.299688863848679000853981837096192399136831121671781279184194)
     a2708 = T(-0.247656877593994914689992276329810825853958069263947095548189)
     a2709 = T(0.110895029771437682893999851839061714522445173600678718208625)
     a2711 = T(-0.491719043846229147070666628704194097678081907210673044988866)
     a2712 = T(-11.4743154427289496968389492564352536350842454130853175250727)
     a2713 = T(80.2593166576230272541702485886484400152793366623589989106256)
     a2714 = T(-0.384132303980042847625312526759029103746926841342088219165648)
     a2715 = T(7.28147667468107583471326950926136115767612581862877764249646)
     a2716 = T(-0.132699384612248379510571708176035274836827341616751884314074)
     a2717 = T(-81.0799832525730726674679289752255240006070716633632990308935)
     a2718 = T(-1.25037492835620639521768185656179119962253747492403205797494)
     a2719 = T(2.59263594969543681023776379504377324994226447359296887778718)
     a2720 = T(-0.301440298346404539830163997260526875264431537275641495291993)
     a2721 = T(0.221384460789832337451706451572773791695246839057318414301020)
     a2722 = T(0.0827577274771892931955989870974693152996276435429809890551210)
     a2723 = T(18.9960662040611520464672450037243263998175161412237156872211)
     a2724 = T(0.269231946409639685623468015128334167460051910348912845121977)
     a2725 = T(1.62674827447066537462989364929628933988125029284183680279020)
     a2726 = T(0.491719043846229147070666628704194097678081907210673044988866)

     a2800 = T(0.0838479812409052664616968791372814085980533139224911131069335)
     a2805 = T(-0.0117949367100973814319755056031295775367961960590736150777613)
     a2806 = T(-0.247299020568812652339473838743194598325992840353340132697498)
     a2807 = T(0.0978080858367729012259313014081291665503740655476733940756599)
     a2808 = T(0.217590689243420631360008651767860318344168120024782176879989)
     a2810 = T(0.137585606763325224865659632196787746647447222975084865975440)
     a2811 = T(0.0439870229715046685058790092341545026046103890294261359042581)
     a2813 = T(-0.513700813768193341957004456618630303738757363641964030086972)
     a2814 = T(0.826355691151315508644211308399153458701423158616168576922372)
     a2815 = T(25.7018139719811832625873882972519939511136556341960074626615)
     a2823 = T(-25.7018139719811832625873882972519939511136556341960074626615)
     a2824 = T(-0.826355691151315508644211308399153458701423158616168576922372)
     a2825 = T(0.513700813768193341957004456618630303738757363641964030086972)
     a2826 = T(-0.0439870229715046685058790092341545026046103890294261359042581)
     a2827 = T(-0.137585606763325224865659632196787746647447222975084865975440)

     a2900 = T(0.124380526654094412881516420868799316268491466359671423163289)
     a2904 = T(0.226120282197584301422238662979202901196752320742633143965145)
     a2905 = T(0.0137885887618080880607695837016477814530969417491493385363543)
     a2906 = T(-0.0672210133996684449749399507414305856950086341525382182856200)
     a2909 = T(-0.856238975085428354755349769879501772112121597411563802855067)
     a2910 = T(-1.96337522866858908928262850028093813988180440518267404553576)
     a2911 = T(-0.232332822724119401237246257308921847250108199230419994978218)
     a2913 = T(4.30660719086453349461668936876562947772432562053478092626764)
     a2914 = T(-2.92722963249465482659787911202390446687687394950633612630592)
     a2915 = T(-82.3131666397858944454492334105458707735761966428138676971041)
     a2923 = T(82.3131666397858944454492334105458707735761966428138676971041)
     a2924 = T(2.92722963249465482659787911202390446687687394950633612630592)
     a2925 = T(-4.30660719086453349461668936876562947772432562053478092626764)
     a2926 = T(0.232332822724119401237246257308921847250108199230419994978218)
     a2927 = T(1.96337522866858908928262850028093813988180440518267404553576)
     a2928 = T(0.856238975085428354755349769879501772112121597411563802855067)

     a3000 = T(0.103484561636679776672993546511910344499744798201971316606663)
     a3003 = T(0.122068887306407222589644082868962077139592714834162134741275)
     a3004 = T(0.482574490331246622475134780125688112865919023850168049679402)
     a3005 = T(-0.0381409600015606999730886240005620205664113072478411477421970)
     a3007 = T(-0.550499525310802324138388507020508177411414311000037561712836)
     a3009 = T(-0.711915811585189227887648262043794387578291882406745570495765)
     a3010 = T(-0.584129605671551340432988730158480872095335329645227595707052)
     a3013 = T(2.11046308125864932128717300046622750300375054278936987850718)
     a3014 = T(-0.0837494736739572135525742023001037992695260175335123517729291)
     a3015 = T(5.10021499072320914075295969043344113107545060862804249161191)
     a3023 = T(-5.10021499072320914075295969043344113107545060862804249161191)
     a3024 = T(0.0837494736739572135525742023001037992695260175335123517729291)
     a3025 = T(-2.11046308125864932128717300046622750300375054278936987850718)
     a3027 = T(0.584129605671551340432988730158480872095335329645227595707052)
     a3028 = T(0.711915811585189227887648262043794387578291882406745570495765)
     a3029 = T(0.550499525310802324138388507020508177411414311000037561712836)

     a3100 = T(29//150)
     a3102 = T(11//50)
     a3103 = T(-2//25)
     a3106 = T(0.109993425580724703919462404865068340845119058295846426463652)
     a3107 = T(-0.254297048076270161384068506997153122141835626976703920846242)
     a3109 = T(0.865570777116694254343770343821098281832847401233011859346737)
     a3110 = T(3.32416449114093083106799552786572018336860092936986407160200)
     a3113 = T(-12.0102223315977933882352385148661841260301942633996815127277)
     a3114 = T(0.476601466242493239430442776862061899602963782003580209476163)
     a3115 = T(-29.0243011221036390525802623213654099596251221332470910692353)
     a3123 = T(29.0243011221036390525802623213654099596251221332470910692353)
     a3124 = T(-0.476601466242493239430442776862061899602963782003580209476163)
     a3125 = T(12.0102223315977933882352385148661841260301942633996815127277)
     a3127 = T(-3.32416449114093083106799552786572018336860092936986407160200)
     a3128 = T(-0.865570777116694254343770343821098281832847401233011859346737)
     a3129 = T(0.254297048076270161384068506997153122141835626976703920846242)
     a3130 = T(-0.109993425580724703919462404865068340845119058295846426463652)

     a3200 = T(-5//6)
     a3201 = T(25//18)
     a3204 = T(-3//4)
     a3206 = T(-0.492529543718026304422682049114021320200214681580657784719074)
     a3230 = T(0.492529543718026304422682049114021320200214681580657784719074)
     a3231 = T(3//4)

     a3300 = T(1//9)
     a3302 = T(-2//9)
     a3332 = T(2//9)

     a3400 = T(0.285835140388971558796088842163836414852927537894596466840753)
     a3401 = T(7//24)
     a3402 = T(7//32)
     a3404 = T(21//128)
     a3406 = T(0.218194354945556658327188241581352107093288824322187941141516)
     a3407 = T(0.180392898478697766863635221946775437719620053641849228562435)
     a3409 = T(0.205713839404845018859120755122929542277570094982808905393991)
     a3410 = T(0.242715791581770239970282927959446515762745971386670541948576)
     a3411 = T(0.246465780813629305833609291181891407799228103869305705137021)
     a3412 = T(-3.44991940790890824979834154601622662060370460614931644223924)
     a3413 = T(0.228875562160036081760729060738458584294220372552740218459295)
     a3414 = T(0.283290599702151415321527419056733335978436595493855789831434)
     a3415 = T(3.21085125837766640960131490544236787005557320332238705967955)
     a3416 = T(-0.223538777364845699920233756214162507964125230083674032084065)
     a3417 = T(-0.707121157204419073518727286207487212130091231955206160635271)
     a3418 = T(3.21123345150287080408174729202856500893260034443022374267639)
     a3419 = T(1.40954348309669766030414474301123175769045945573548986335553)
     a3420 = T(-0.151362053443742613121602276742518111090963026203676055891793)
     a3421 = T(0.372350574527014276454724080214619984397121028202148298716575)
     a3422 = T(0.252978746406361336722199907762141285915775728129414319261111)
     a3423 = T(-3.21085125837766640960131490544236787005557320332238705967955)
     a3424 = T(-0.283290599702151415321527419056733335978436595493855789831434)
     a3425 = T(-0.228875562160036081760729060738458584294220372552740218459295)
     a3426 = T(-0.246465780813629305833609291181891407799228103869305705137021)
     a3427 = T(-0.242715791581770239970282927959446515762745971386670541948576)
     a3428 = T(-0.205713839404845018859120755122929542277570094982808905393991)
     a3429 = T(-0.180392898478697766863635221946775437719620053641849228562435)
     a3430 = T(-0.218194354945556658327188241581352107093288824322187941141516)
     a3431 = T(-21//128)
     a3432 = T(-7//32)
     a3433 = T(-7//24)
    Feagin14ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1208,a1209,a1210,a1211,a1300,a1308,a1309,a1310,a1311,a1312,a1400,a1408,a1409,a1410,a1411,a1412,a1413,a1500,a1508,a1509,a1510,a1511,a1512,a1513,a1514,a1600,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,a1700,a1712,a1713,a1714,a1715,a1716,a1800,a1812,a1813,a1814,a1815,a1816,a1817,a1900,a1912,a1913,a1914,a1915,a1916,a1917,a1918,a2000,a2012,a2013,a2014,a2015,a2016,a2017,a2018,a2019,a2100,a2112,a2113,a2114,a2115,a2116,a2117,a2118,a2119,a2120,a2200,a2212,a2213,a2214,a2215,a2216,a2217,a2218,a2219,a2220,a2221,a2300,a2308,a2309,a2310,a2311,a2312,a2313,a2314,a2315,a2316,a2317,a2318,a2319,a2320,a2321,a2322,a2400,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2416,a2417,a2418,a2419,a2420,a2421,a2422,a2423,a2500,a2508,a2509,a2510,a2511,a2512,a2513,a2514,a2515,a2516,a2517,a2518,a2519,a2520,a2521,a2522,a2523,a2524,a2600,a2605,a2606,a2607,a2608,a2609,a2610,a2612,a2613,a2614,a2615,a2616,a2617,a2618,a2619,a2620,a2621,a2622,a2623,a2624,a2625,a2700,a2705,a2706,a2707,a2708,a2709,a2711,a2712,a2713,a2714,a2715,a2716,a2717,a2718,a2719,a2720,a2721,a2722,a2723,a2724,a2725,a2726,a2800,a2805,a2806,a2807,a2808,a2810,a2811,a2813,a2814,a2815,a2823,a2824,a2825,a2826,a2827,a2900,a2904,a2905,a2906,a2909,a2910,a2911,a2913,a2914,a2915,a2923,a2924,a2925,a2926,a2927,a2928,a3000,a3003,a3004,a3005,a3007,a3009,a3010,a3013,a3014,a3015,a3023,a3024,a3025,a3027,a3028,a3029,a3100,a3102,a3103,a3106,a3107,a3109,a3110,a3113,a3114,a3115,a3123,a3124,a3125,a3127,a3128,a3129,a3130,a3200,a3201,a3204,a3206,a3230,a3231,a3300,a3302,a3332,a3400,a3401,a3402,a3404,a3406,a3407,a3409,a3410,a3411,a3412,a3413,a3414,a3415,a3416,a3417,a3418,a3419,a3420,a3421,a3422,a3423,a3424,a3425,a3426,a3427,a3428,a3429,a3430,a3431,a3432,a3433,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23,c24,c25,c26,c27,c28,c29,c30,c31,c32,c33,c34,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,b24,b25,b26,b27,b28,b29,b30,b31,b32,b33,b34,b35)
end

"""
constructFeagin14

"""
function Feagin14ConstantCache(T::Type,T2::Type)
  adaptiveConst = T(1//1000)
  c1 = T2(1//9)
  c2 = T2(5//9)
  c3 = T2(5//6)
  c4 = T2(1//3)
  c5 = T2(1)
  c6 = T2(parse(BigFloat,"0.669986979272772921764683785505998513938845229638460353285142"))
  c7 = T2(parse(BigFloat,"0.297068384213818357389584716808219413223332094698915687379168"))
  c8 = T2(8//11)
  c9 = T2(parse(BigFloat,"0.140152799042188765276187487966946717629806463082532936287323"))
  c10 = T2(parse(BigFloat,"0.700701039770150737151099854830749337941407049265546408969222"))
  c11 = T2(4//11)
  c12 = T2(parse(BigFloat,"0.263157894736842105263157894736842105263157894736842105263158"))
  c13 = T2(parse(BigFloat,"0.0392172246650270859125196642501208648863714315266128052078483"))
  c14 = T2(parse(BigFloat,"0.812917502928376762983393159278036506189612372617238550774312"))
  c15 = T2(1//6)
  c16 = T2(9//10)
  c17 = T2(parse(BigFloat,"0.0641299257451966923312771193896682809481096651615083225402924"))
  c18 = T2(parse(BigFloat,"0.204149909283428848927744634301023405027149505241333751628870"))
  c19 = T2(parse(BigFloat,"0.395350391048760565615671369827324372352227297456659450554577"))
  c20 = T2(parse(BigFloat,"0.604649608951239434384328630172675627647772702543340549445423"))
  c21 = T2(parse(BigFloat,"0.795850090716571151072255365698976594972850494758666248371130"))
  c22 = T2(parse(BigFloat,"0.935870074254803307668722880610331719051890334838491677459708"))
  c23 = T2(1//6)
  c24 = T2(parse(BigFloat,"0.812917502928376762983393159278036506189612372617238550774312"))
  c25 = T2(parse(BigFloat,"0.0392172246650270859125196642501208648863714315266128052078483"))
  c26 = T2(4//11)
  c27 = T2(parse(BigFloat,"0.700701039770150737151099854830749337941407049265546408969222"))
  c28 = T2(parse(BigFloat,"0.140152799042188765276187487966946717629806463082532936287323"))
  c29 = T2(parse(BigFloat,"0.297068384213818357389584716808219413223332094698915687379168"))
  c30 = T2(parse(BigFloat,"0.669986979272772921764683785505998513938845229638460353285142"))
  c31 = T2(1//3)
  c32 = T2(5//9)
  c33 = T2(1//9)
  c34 = T2(1)

  b1  = T(1//56)
  b2  = T(3//512)
  b3  = T(3//256)
  b4  = T(0)
  b5  = T(9//512)
  b6  = T(0)
  b7  = T(3//128)
  b8  = T(15//512)
  b9  = T(0)
  b10 = T(9//256)
  b11 = T(21//512)
  b12 = T(3//64)
  b13 = T(0)
  b14 = T(27//512)
  b15 = T(15//256)
  b16 = T(33//512)
  b17 = T(0)
  b18 = T(parse(BigFloat,"0.105352113571753019691496032887878162227673083080523884041670"))
  b19 = T(parse(BigFloat,"0.170561346241752182382120338553874085887555487802790804737501"))
  b20 = T(parse(BigFloat,"0.206229397329351940783526485701104894741914286259542454077972"))
  b21 = T(parse(BigFloat,"0.206229397329351940783526485701104894741914286259542454077972"))
  b22 = T(parse(BigFloat,"0.170561346241752182382120338553874085887555487802790804737501"))
  b23 = T(parse(BigFloat,"0.105352113571753019691496032887878162227673083080523884041670"))
  b24 = T(-33//512)
  b25 = T(-15//256)
  b26 = T(-27//512)
  b27 = T(-3//64)
  b28 = T(-21//512)
  b29 = T(-9//256)
  b30 = T(-15//512)
  b31 = T(-3//128)
  b32 = T(-9//512)
  b33 = T(-3//256)
  b34 = T(-3//512)
  b35 = T(1//56)

     a0100 = T(1//9)

     a0200 = T(-5//6)
     a0201 = T(25//18)

     a0300 = T(5//24)
     a0302 = T(5//8)

     a0400 = T(29//150)
     a0402 = T(11//50)
     a0403 = T(-2//25)

     a0500 = T(1//10)
     a0503 = T(2//5)
     a0504 = T(1//2)

     a0600 = T(parse(BigFloat,"0.103484561636679776672993546511910344499744798201971316606663"))
     a0603 = T(parse(BigFloat,"0.122068887306407222589644082868962077139592714834162134741275"))
     a0604 = T(parse(BigFloat,"0.482574490331246622475134780125688112865919023850168049679402"))
     a0605 = T(parse(BigFloat,"-0.0381409600015606999730886240005620205664113072478411477421970"))

     a0700 = T(parse(BigFloat,"0.124380526654094412881516420868799316268491466359671423163289"))
     a0704 = T(parse(BigFloat,"0.226120282197584301422238662979202901196752320742633143965145"))
     a0705 = T(parse(BigFloat,"0.0137885887618080880607695837016477814530969417491493385363543"))
     a0706 = T(parse(BigFloat,"-0.0672210133996684449749399507414305856950086341525382182856200"))
     a0800 = T(parse(BigFloat,"0.0936919065659673815530885456083005933866349695217750085655603"))
     a0805 = T(parse(BigFloat,"-0.00613406843450510987229498995641664735620914507128858871007099"))
     a0806 = T(parse(BigFloat,"0.216019825625503063708860097659866573490979433278117320188668"))
     a0807 = T(parse(BigFloat,"0.423695063515761937337619073960976753205867469544123532683116"))


     a0900 = T(parse(BigFloat,"0.0838479812409052664616968791372814085980533139224911131069335"))
     a0905 = T(parse(BigFloat,"-0.0117949367100973814319755056031295775367961960590736150777613"))
     a0906 = T(parse(BigFloat,"-0.247299020568812652339473838743194598325992840353340132697498"))
     a0907 = T(parse(BigFloat,"0.0978080858367729012259313014081291665503740655476733940756599"))
     a0908 = T(parse(BigFloat,"0.217590689243420631360008651767860318344168120024782176879989"))

     a1000 = T(parse(BigFloat,"0.0615255359769428227954562389614314714333423969064821107453940"))
     a1005 = T(parse(BigFloat,"0.00592232780324503308042990005798046524738389560444257136834990"))
     a1006 = T(parse(BigFloat,"0.470326159963841112217224303205894113455362530746108825010848"))
     a1007 = T(parse(BigFloat,"0.299688863848679000853981837096192399136831121671781279184194"))
     a1008 = T(parse(BigFloat,"-0.247656877593994914689992276329810825853958069263947095548189"))
     a1009 = T(parse(BigFloat,"0.110895029771437682893999851839061714522445173600678718208625"))

     a1100 = T(parse(BigFloat,"0.0419700073362782579861792864787277787213483656543104611245994"))
     a1105 = T(parse(BigFloat,"-0.00317987696266205093901912847692712407988609169703103952205634"))
     a1106 = T(parse(BigFloat,"0.806397714906192077260821711520379506393543111567419750119748"))
     a1107 = T(parse(BigFloat,"0.0975983126412388979093522850684288851314672048003054550357187"))
     a1108 = T(parse(BigFloat,"0.778575578158398909027512446452927238999763460594181964958853"))
     a1109 = T(parse(BigFloat,"0.204890423831599428189499202098105603312029235081420653574829"))
     a1110 = T(parse(BigFloat,"-1.56261579627468188307070943950527825211462892236424360892806"))

     a1200 = T(parse(BigFloat,"0.0437726782233730163574465242495339811688214967071614123256973"))
     a1208 = T(parse(BigFloat,"0.00624365027520195208794358628580933625281631216903095917201250"))
     a1209 = T(parse(BigFloat,"0.200043097109577314994435165469647856829066232218264969608768"))
     a1210 = T(parse(BigFloat,"-0.00805328367804983036823857162048902911923392887337029314844206"))
     a1211 = T(parse(BigFloat,"0.0211517528067396521915711903523399601316877825157550573051221"))

     a1300 = T(parse(BigFloat,"0.0283499250363514563095023591920717312247137654896477097768495"))
     a1308 = T(parse(BigFloat,"0.00249163204855817407538949148805995149459884653585417680098222"))
     a1309 = T(parse(BigFloat,"0.0230138787854593149638399846373742768772087122638142234223658"))
     a1310 = T(parse(BigFloat,"-0.00322155956692977098724476092467120878189463604760620461043308"))
     a1311 = T(parse(BigFloat,"0.00988442549447664668946335414487885256040819982786014648129297"))
     a1312 = T(parse(BigFloat,"-0.0213010771328887351384307642875927384886634565429572466632092"))

     a1400 = T(parse(BigFloat,"0.343511894290243001049432234735147943083353174980701426268122"))
     a1408 = T(parse(BigFloat,"0.210451912023627385609097011999010655788807405225626700040882"))
     a1409 = T(parse(BigFloat,"1.03427452057230411936482926828825709938667999698324740166559"))
     a1410 = T(parse(BigFloat,"0.00600303645864422487051240448206640574939078092406156945568306"))
     a1411 = T(parse(BigFloat,"0.855938125099619537578012106002407728915062652616416005816477"))
     a1412 = T(parse(BigFloat,"-0.977235005036766810872264852372525633013107656892839677696022"))
     a1413 = T(parse(BigFloat,"-0.660026980479294694616225013856327693720573981219974874776419"))

     a1500 = T(parse(BigFloat,"-0.0143574001672168069538206399935076366657755954378399880691949"))
     a1508 = T(parse(BigFloat,"-0.0366253270049039970293685796848974791733119081733552207318285"))
     a1509 = T(parse(BigFloat,"0.0350254975636213681976849406979846524346789082471103574920148"))
     a1510 = T(parse(BigFloat,"0.0360946016362113508931786658758335239823689929864237671348749"))
     a1511 = T(parse(BigFloat,"-0.0265219967553681106351595946834601923649627012457464284442911"))
     a1512 = T(parse(BigFloat,"0.0445699011305698119638911537508839908104336323082226770910408"))
     a1513 = T(parse(BigFloat,"0.124343093331358243286225595741786448038973408895106741855721"))
     a1514 = T(parse(BigFloat,"0.00413829693239480694403512496204335960426192908674476033832967"))

     a1600 = T(parse(BigFloat,"0.356032404425120290975609116398089176264106222379748802654822"))
     a1608 = T(parse(BigFloat,"-0.450192758947562595966821779075956175110645100214763601190349"))
     a1609 = T(parse(BigFloat,"0.430527907083710898626656292808782917793030154094709462877146"))
     a1610 = T(parse(BigFloat,"0.511973029011022237668556960394071692077125787030651386389972"))
     a1611 = T(parse(BigFloat,"0.908303638886404260390159124638110213997496214819904630546596"))
     a1612 = T(parse(BigFloat,"-1.23921093371933931757372469151534028854413889248605726186520"))
     a1613 = T(parse(BigFloat,"-0.649048661671761465141672348879062553905402831967191097656668"))
     a1614 = T(parse(BigFloat,"0.251708904586819292210480529948970541404887852931447491219418"))
     a1615 = T(parse(BigFloat,"0.779906470345586398810756795282334476023540593411550187024263"))

     a1700 = T(parse(BigFloat,"0.0130935687406513066406881206418834980127470438213192487844956"))
     a1712 = T(parse(BigFloat,"-0.0000932053067985113945908461962767108237858631509684667142124826"))
     a1713 = T(parse(BigFloat,"0.0505374334262299359640090443138590726770942344716122381702746"))
     a1714 = T(parse(BigFloat,"8.04470341944487979109579109610197797641311868930865361048975e-7"))
     a1715 = T(parse(BigFloat,"0.000591726029494171190528755742777717259844340971924321528178248"))
     a1716 = T(parse(BigFloat,"-4.01614722154557337064691684906375587732264247950093804676867e-7"))

     a1800 = T(parse(BigFloat,"0.0207926484466053012541944544000765652167255206144373407979758"))
     a1812 = T(parse(BigFloat,"0.000582695918800085915101902697837284108951406103029871570103075"))
     a1813 = T(parse(BigFloat,"-0.00801700732358815939083342186525852746640558465919633524655451"))
     a1814 = T(parse(BigFloat,"4.03847643847136940375170821743560570484117290330895506618968e-6"))
     a1815 = T(parse(BigFloat,"0.0854609998055506144225056114567535602510114622033622491802597"))
     a1816 = T(parse(BigFloat,"-2.04486480935804242706707569691004307904442837552677456232848e-6"))
     a1817 = T(parse(BigFloat,"0.105328578824431893399799402979093997354240904235172843146582"))


     a1900 = T(parse(BigFloat,"1.40153449795736021415446247355771306718486452917597731683689"))
     a1912 = T(parse(BigFloat,"-0.230252000984221261616272410367415621261130298274455611733277"))
     a1913 = T(parse(BigFloat,"-7.21106840466912905659582237106874247165856493509961561958267"))
     a1914 = T(parse(BigFloat,"0.00372901560694836335236995327852132340217759566678662385552634"))
     a1915 = T(parse(BigFloat,"-4.71415495727125020678778179392224757011323373221820091641216"))
     a1916 = T(parse(BigFloat,"-0.00176367657545349242053841995032797673574903886695600132759652"))
     a1917 = T(parse(BigFloat,"7.64130548038698765563029310880237651185173367813936997648198"))
     a1918 = T(parse(BigFloat,"3.50602043659751834989896082949744710968212949893375368243588"))

     a2000 = T(parse(BigFloat,"11.9514650694120686799372385830716401674473610826553517297976"))
     a2012 = T(parse(BigFloat,"7.79480932108175968783516700231764388220284279598980948538579"))
     a2013 = T(parse(BigFloat,"-56.4501393867325792523560991120904281440468100061340556540132"))
     a2014 = T(parse(BigFloat,"0.0912376306930644901344530449290276645709607450403673704844997"))
     a2015 = T(parse(BigFloat,"-12.7336279925434886201945524309199275038162717529918963305155"))
     a2016 = T(parse(BigFloat,"-0.0396895921904719712313542810939736674712383070433147873009352"))
     a2017 = T(parse(BigFloat,"54.4392141883570886996225765155307791861438378423305337073797"))
     a2018 = T(parse(BigFloat,"-3.64411637921569236846406990361350645806721478409266709351203"))
     a2019 = T(parse(BigFloat,"-0.804503249910509910899030787958579499315694913210787878260459"))

     a2100 = T(parse(BigFloat,"-148.809426507100488427838868268647625561930612082148597076690"))
     a2112 = T(parse(BigFloat,"-91.7295278291256484357935662402321623495228729036354276506427"))
     a2113 = T(parse(BigFloat,"707.656144971598359834575719286335716154821128966649565194286"))
     a2114 = T(parse(BigFloat,"-1.10563611857482440905296961311590930801338308942637769555540"))
     a2115 = T(parse(BigFloat,"176.134591883811372587859898076055660406999516762301689616841"))
     a2116 = T(parse(BigFloat,"0.491384824214880662268898345164454557416884631402764792538746"))
     a2117 = T(parse(BigFloat,"-684.278000449814944358237535610895081956077167893600278300805"))
     a2118 = T(parse(BigFloat,"27.9910604998398258984224332124380407446002518400668657974589"))
     a2119 = T(parse(BigFloat,"13.1939710030282333443670964371153238435064159623744975073252"))
     a2120 = T(parse(BigFloat,"1.25128781283980445450114974148056006317268830077396406361417"))

     a2200 = T(parse(BigFloat,"-9.67307946948196763644126118433219395839951408571877262880482"))
     a2212 = T(parse(BigFloat,"-4.46990150858505531443846227701960360497830681408751431146712"))
     a2213 = T(parse(BigFloat,"45.5127128690952681968241950400052751178905907817398483534845"))
     a2214 = T(parse(BigFloat,"-0.0713085086183826912791492024438246129930559805352394367050813"))
     a2215 = T(parse(BigFloat,"11.2273614068412741582590624479939384207826800776794485051540"))
     a2216 = T(parse(BigFloat,"0.126244376717622724516237912909138809361786889819105426371393"))
     a2217 = T(parse(BigFloat,"-43.5439339549483313605810624907242107623814304467621407753424"))
     a2218 = T(parse(BigFloat,"0.787174307543058978398792994996550902064546091443233850464377"))
     a2219 = T(parse(BigFloat,"0.532264696744684215669300708603886690785395776821503851830821"))
     a2220 = T(parse(BigFloat,"0.422422733996325326010225127471388772575086538809603346825334"))
     a2221 = T(parse(BigFloat,"0.0859131249503067107308438031499859443441115056294154956487671"))

     a2300 = T(parse(BigFloat,"-10.0664032447054702403396606900426891472202824757968765569183"))
     a2308 = T(parse(BigFloat,"-0.0366253270049039970293685796848974791733119081733552207318285"))
     a2309 = T(parse(BigFloat,"0.0350254975636213681976849406979846524346789082471103574920148"))
     a2310 = T(parse(BigFloat,"0.0360946016362113508931786658758335239823689929864237671348749"))
     a2311 = T(parse(BigFloat,"-0.0265219967553681106351595946834601923649627012457464284442911"))
     a2312 = T(parse(BigFloat,"-6.27088972181464143590553149478871603839356122957396018530209"))
     a2313 = T(parse(BigFloat,"48.2079237442562989090702103008195063923492593141636117832993"))
     a2314 = T(parse(BigFloat,"-0.0694471689136165640882395180583732834557754169149088630301342"))
     a2315 = T(parse(BigFloat,"12.6810690204850295698341370913609807066108483811412127009785"))
     a2316 = T(parse(BigFloat,"0.0119671168968323754838161435501011294100927813964199613229864"))
     a2317 = T(parse(BigFloat,"-46.7249764992482408003358268242662695593201321659795608950429"))
     a2318 = T(parse(BigFloat,"1.33029613326626711314710039298216591399033511191227101321435"))
     a2319 = T(parse(BigFloat,"1.00766787503398298353438903619926657771162717793661719708370"))
     a2320 = T(parse(BigFloat,"0.0209512051933665091664122388475480702892770753864487241177616"))
     a2321 = T(parse(BigFloat,"0.0210134706331264177317735424331396407424412188443757490871603"))
     a2322 = T(parse(BigFloat,"0.00952196014417121794175101542454575907376360233658356240547761"))

     a2400 = T(parse(BigFloat,"-409.478081677743708772589097409370357624424341606752069725341"))
     a2408 = T(parse(BigFloat,"0.210451912023627385609097011999010655788807405225626700040882"))
     a2409 = T(parse(BigFloat,"1.03427452057230411936482926828825709938667999698324740166559"))
     a2410 = T(parse(BigFloat,"0.00600303645864422487051240448206640574939078092406156945568306"))
     a2411 = T(parse(BigFloat,"0.855938125099619537578012106002407728915062652616416005816477"))
     a2412 = T(parse(BigFloat,"-250.516998547447860492777657729316130386584050420782075966990"))
     a2413 = T(parse(BigFloat,"1946.42466652388427766053750328264758595829850895761428240231"))
     a2414 = T(parse(BigFloat,"-3.04503882102310365506105809086860882786950544097602101685174"))
     a2415 = T(parse(BigFloat,"490.626379528281713521208265299168083841598542274061671576230"))
     a2416 = T(parse(BigFloat,"1.56647589531270907115484067013597445739595615245966775329993"))
     a2417 = T(parse(BigFloat,"-1881.97428994011173362217267377035870619215906638453056643641"))
     a2418 = T(parse(BigFloat,"75.2592224724847175278837713643303149821620618914245864351135"))
     a2419 = T(parse(BigFloat,"34.5734356980331067622434344736554689696728644793551014989002"))
     a2420 = T(parse(BigFloat,"3.21147679440968961435417361847073755169022966748891627882572"))
     a2421 = T(parse(BigFloat,"-0.460408041738414391307201404237058848867245095265382820823055"))
     a2422 = T(parse(BigFloat,"-0.0870718339841810522431884137957986245724252047388936572215438"))
     a2423 = T(parse(BigFloat,"-7.39351814158303067567016952195521063999185773249132944724553"))

     a2500 = T(parse(BigFloat,"3.43347475853550878921093496257596781120623891072008459930197"))
     a2508 = T(parse(BigFloat,"0.00249163204855817407538949148805995149459884653585417680098222"))
     a2509 = T(parse(BigFloat,"0.0230138787854593149638399846373742768772087122638142234223658"))
     a2510 = T(parse(BigFloat,"-0.00322155956692977098724476092467120878189463604760620461043308"))
     a2511 = T(parse(BigFloat,"0.00988442549447664668946335414487885256040819982786014648129297"))
     a2512 = T(parse(BigFloat,"2.16252799377922507788307841904757354045759225335732707916530"))
     a2513 = T(parse(BigFloat,"-16.2699864546457421328065640660139489006987552040228852402716"))
     a2514 = T(parse(BigFloat,"-0.128534502120524552843583417470935010538029037542654506231743"))
     a2515 = T(parse(BigFloat,"-8.98915042666504253089307820833379330486511746063552853023189"))
     a2516 = T(parse(BigFloat,"-0.00348595363232025333387080201851013650192401767250513765000963"))
     a2517 = T(parse(BigFloat,"15.7936194113339807536235187388695574135853387025139738341334"))
     a2518 = T(parse(BigFloat,"-0.574403330914095065628165482017335820148383663195675408024658"))
     a2519 = T(parse(BigFloat,"-0.345602039021393296692722496608124982535237228827655306030152"))
     a2520 = T(parse(BigFloat,"-0.00662241490206585091731619991383757781133067992707418687587487"))
     a2521 = T(parse(BigFloat,"-0.00777788129242204164032546458607364309759347209626759111946150"))
     a2522 = T(parse(BigFloat,"-0.00356084192402274913338827232697437364675240818791706587952939"))
     a2523 = T(parse(BigFloat,"4.79282506449930799649797749629840189457296934139359048988332"))
     a2524 = T(parse(BigFloat,"0.153725464873068577844576387402512082757034273069877432944621"))

     a2600 = T(parse(BigFloat,"32.3038520871985442326994734440031535091364975047784630088983"))
     a2605 = T(parse(BigFloat,"-0.00317987696266205093901912847692712407988609169703103952205634"))
     a2606 = T(parse(BigFloat,"0.806397714906192077260821711520379506393543111567419750119748"))
     a2607 = T(parse(BigFloat,"0.0975983126412388979093522850684288851314672048003054550357187"))
     a2608 = T(parse(BigFloat,"0.778575578158398909027512446452927238999763460594181964958853"))
     a2609 = T(parse(BigFloat,"0.204890423831599428189499202098105603312029235081420653574829"))
     a2610 = T(parse(BigFloat,"-1.56261579627468188307070943950527825211462892236424360892806"))
     a2612 = T(parse(BigFloat,"16.3429891882310570648504243973927174708753353504154550405647"))
     a2613 = T(parse(BigFloat,"-154.544555293543621230730189631471036399316683669609116705323"))
     a2614 = T(parse(BigFloat,"1.56971088703334872692034283417621761466263593582497085955201"))
     a2615 = T(parse(BigFloat,"3.27685545087248131321429817269900731165522404974733504794135"))
     a2616 = T(parse(BigFloat,"-0.0503489245193653176348040727199783626534081095691632396802451"))
     a2617 = T(parse(BigFloat,"153.321151858041665070593767885914694011224363102594556731397"))
     a2618 = T(parse(BigFloat,"7.17568186327720495846766484814784143567826308034865369443637"))
     a2619 = T(parse(BigFloat,"-2.94036748675300481945917659896930989215320594380777597403592"))
     a2620 = T(parse(BigFloat,"-0.0665845946076803144470749676022628870281920493197256887985612"))
     a2621 = T(parse(BigFloat,"-0.0462346054990843661229248668562217261176966514016859284197145"))
     a2622 = T(parse(BigFloat,"-0.0204198733585679401539388228617269778848579774821581777675337"))
     a2623 = T(parse(BigFloat,"-53.3523106438735850515953441165998107974045090495791591218714"))
     a2624 = T(parse(BigFloat,"-1.35548714715078654978732186705996404017554501614191325114947"))
     a2625 = T(parse(BigFloat,"-1.57196275801232751882901735171459249177687219114442583461866"))

     a2700 = T(parse(BigFloat,"-16.6451467486341512872031294403931758764560371130818978459405"))
     a2705 = T(parse(BigFloat,"0.00592232780324503308042990005798046524738389560444257136834990"))
     a2706 = T(parse(BigFloat,"0.470326159963841112217224303205894113455362530746108825010848"))
     a2707 = T(parse(BigFloat,"0.299688863848679000853981837096192399136831121671781279184194"))
     a2708 = T(parse(BigFloat,"-0.247656877593994914689992276329810825853958069263947095548189"))
     a2709 = T(parse(BigFloat,"0.110895029771437682893999851839061714522445173600678718208625"))
     a2711 = T(parse(BigFloat,"-0.491719043846229147070666628704194097678081907210673044988866"))
     a2712 = T(parse(BigFloat,"-11.4743154427289496968389492564352536350842454130853175250727"))
     a2713 = T(parse(BigFloat,"80.2593166576230272541702485886484400152793366623589989106256"))
     a2714 = T(parse(BigFloat,"-0.384132303980042847625312526759029103746926841342088219165648"))
     a2715 = T(parse(BigFloat,"7.28147667468107583471326950926136115767612581862877764249646"))
     a2716 = T(parse(BigFloat,"-0.132699384612248379510571708176035274836827341616751884314074"))
     a2717 = T(parse(BigFloat,"-81.0799832525730726674679289752255240006070716633632990308935"))
     a2718 = T(parse(BigFloat,"-1.25037492835620639521768185656179119962253747492403205797494"))
     a2719 = T(parse(BigFloat,"2.59263594969543681023776379504377324994226447359296887778718"))
     a2720 = T(parse(BigFloat,"-0.301440298346404539830163997260526875264431537275641495291993"))
     a2721 = T(parse(BigFloat,"0.221384460789832337451706451572773791695246839057318414301020"))
     a2722 = T(parse(BigFloat,"0.0827577274771892931955989870974693152996276435429809890551210"))
     a2723 = T(parse(BigFloat,"18.9960662040611520464672450037243263998175161412237156872211"))
     a2724 = T(parse(BigFloat,"0.269231946409639685623468015128334167460051910348912845121977"))
     a2725 = T(parse(BigFloat,"1.62674827447066537462989364929628933988125029284183680279020"))
     a2726 = T(parse(BigFloat,"0.491719043846229147070666628704194097678081907210673044988866"))

     a2800 = T(parse(BigFloat,"0.0838479812409052664616968791372814085980533139224911131069335"))
     a2805 = T(parse(BigFloat,"-0.0117949367100973814319755056031295775367961960590736150777613"))
     a2806 = T(parse(BigFloat,"-0.247299020568812652339473838743194598325992840353340132697498"))
     a2807 = T(parse(BigFloat,"0.0978080858367729012259313014081291665503740655476733940756599"))
     a2808 = T(parse(BigFloat,"0.217590689243420631360008651767860318344168120024782176879989"))
     a2810 = T(parse(BigFloat,"0.137585606763325224865659632196787746647447222975084865975440"))
     a2811 = T(parse(BigFloat,"0.0439870229715046685058790092341545026046103890294261359042581"))
     a2813 = T(parse(BigFloat,"-0.513700813768193341957004456618630303738757363641964030086972"))
     a2814 = T(parse(BigFloat,"0.826355691151315508644211308399153458701423158616168576922372"))
     a2815 = T(parse(BigFloat,"25.7018139719811832625873882972519939511136556341960074626615"))
     a2823 = T(parse(BigFloat,"-25.7018139719811832625873882972519939511136556341960074626615"))
     a2824 = T(parse(BigFloat,"-0.826355691151315508644211308399153458701423158616168576922372"))
     a2825 = T(parse(BigFloat,"0.513700813768193341957004456618630303738757363641964030086972"))
     a2826 = T(parse(BigFloat,"-0.0439870229715046685058790092341545026046103890294261359042581"))
     a2827 = T(parse(BigFloat,"-0.137585606763325224865659632196787746647447222975084865975440"))

     a2900 = T(parse(BigFloat,"0.124380526654094412881516420868799316268491466359671423163289"))
     a2904 = T(parse(BigFloat,"0.226120282197584301422238662979202901196752320742633143965145"))
     a2905 = T(parse(BigFloat,"0.0137885887618080880607695837016477814530969417491493385363543"))
     a2906 = T(parse(BigFloat,"-0.0672210133996684449749399507414305856950086341525382182856200"))
     a2909 = T(parse(BigFloat,"-0.856238975085428354755349769879501772112121597411563802855067"))
     a2910 = T(parse(BigFloat,"-1.96337522866858908928262850028093813988180440518267404553576"))
     a2911 = T(parse(BigFloat,"-0.232332822724119401237246257308921847250108199230419994978218"))
     a2913 = T(parse(BigFloat,"4.30660719086453349461668936876562947772432562053478092626764"))
     a2914 = T(parse(BigFloat,"-2.92722963249465482659787911202390446687687394950633612630592"))
     a2915 = T(parse(BigFloat,"-82.3131666397858944454492334105458707735761966428138676971041"))
     a2923 = T(parse(BigFloat,"82.3131666397858944454492334105458707735761966428138676971041"))
     a2924 = T(parse(BigFloat,"2.92722963249465482659787911202390446687687394950633612630592"))
     a2925 = T(parse(BigFloat,"-4.30660719086453349461668936876562947772432562053478092626764"))
     a2926 = T(parse(BigFloat,"0.232332822724119401237246257308921847250108199230419994978218"))
     a2927 = T(parse(BigFloat,"1.96337522866858908928262850028093813988180440518267404553576"))
     a2928 = T(parse(BigFloat,"0.856238975085428354755349769879501772112121597411563802855067"))

     a3000 = T(parse(BigFloat,"0.103484561636679776672993546511910344499744798201971316606663"))
     a3003 = T(parse(BigFloat,"0.122068887306407222589644082868962077139592714834162134741275"))
     a3004 = T(parse(BigFloat,"0.482574490331246622475134780125688112865919023850168049679402"))
     a3005 = T(parse(BigFloat,"-0.0381409600015606999730886240005620205664113072478411477421970"))
     a3007 = T(parse(BigFloat,"-0.550499525310802324138388507020508177411414311000037561712836"))
     a3009 = T(parse(BigFloat,"-0.711915811585189227887648262043794387578291882406745570495765"))
     a3010 = T(parse(BigFloat,"-0.584129605671551340432988730158480872095335329645227595707052"))
     a3013 = T(parse(BigFloat,"2.11046308125864932128717300046622750300375054278936987850718"))
     a3014 = T(parse(BigFloat,"-0.0837494736739572135525742023001037992695260175335123517729291"))
     a3015 = T(parse(BigFloat,"5.10021499072320914075295969043344113107545060862804249161191"))
     a3023 = T(parse(BigFloat,"-5.10021499072320914075295969043344113107545060862804249161191"))
     a3024 = T(parse(BigFloat,"0.0837494736739572135525742023001037992695260175335123517729291"))
     a3025 = T(parse(BigFloat,"-2.11046308125864932128717300046622750300375054278936987850718"))
     a3027 = T(parse(BigFloat,"0.584129605671551340432988730158480872095335329645227595707052"))
     a3028 = T(parse(BigFloat,"0.711915811585189227887648262043794387578291882406745570495765"))
     a3029 = T(parse(BigFloat,"0.550499525310802324138388507020508177411414311000037561712836"))

     a3100 = T(29//150)
     a3102 = T(11//50)
     a3103 = T(-2//25)
     a3106 = T(parse(BigFloat,"0.109993425580724703919462404865068340845119058295846426463652"))
     a3107 = T(parse(BigFloat,"-0.254297048076270161384068506997153122141835626976703920846242"))
     a3109 = T(parse(BigFloat,"0.865570777116694254343770343821098281832847401233011859346737"))
     a3110 = T(parse(BigFloat,"3.32416449114093083106799552786572018336860092936986407160200"))
     a3113 = T(parse(BigFloat,"-12.0102223315977933882352385148661841260301942633996815127277"))
     a3114 = T(parse(BigFloat,"0.476601466242493239430442776862061899602963782003580209476163"))
     a3115 = T(parse(BigFloat,"-29.0243011221036390525802623213654099596251221332470910692353"))
     a3123 = T(parse(BigFloat,"29.0243011221036390525802623213654099596251221332470910692353"))
     a3124 = T(parse(BigFloat,"-0.476601466242493239430442776862061899602963782003580209476163"))
     a3125 = T(parse(BigFloat,"12.0102223315977933882352385148661841260301942633996815127277"))
     a3127 = T(parse(BigFloat,"-3.32416449114093083106799552786572018336860092936986407160200"))
     a3128 = T(parse(BigFloat,"-0.865570777116694254343770343821098281832847401233011859346737"))
     a3129 = T(parse(BigFloat,"0.254297048076270161384068506997153122141835626976703920846242"))
     a3130 = T(parse(BigFloat,"-0.109993425580724703919462404865068340845119058295846426463652"))

     a3200 = T(-5//6)
     a3201 = T(25//18)
     a3204 = T(-3//4)
     a3206 = T(parse(BigFloat,"-0.492529543718026304422682049114021320200214681580657784719074"))
     a3230 = T(parse(BigFloat,"0.492529543718026304422682049114021320200214681580657784719074"))
     a3231 = T(3//4)

     a3300 = T(1//9)
     a3302 = T(-2//9)
     a3332 = T(2//9)

     a3400 = T(parse(BigFloat,"0.285835140388971558796088842163836414852927537894596466840753"))
     a3401 = T(7//24)
     a3402 = T(7//32)
     a3404 = T(21//128)
     a3406 = T(parse(BigFloat,"0.218194354945556658327188241581352107093288824322187941141516"))
     a3407 = T(parse(BigFloat,"0.180392898478697766863635221946775437719620053641849228562435"))
     a3409 = T(parse(BigFloat,"0.205713839404845018859120755122929542277570094982808905393991"))
     a3410 = T(parse(BigFloat,"0.242715791581770239970282927959446515762745971386670541948576"))
     a3411 = T(parse(BigFloat,"0.246465780813629305833609291181891407799228103869305705137021"))
     a3412 = T(parse(BigFloat,"-3.44991940790890824979834154601622662060370460614931644223924"))
     a3413 = T(parse(BigFloat,"0.228875562160036081760729060738458584294220372552740218459295"))
     a3414 = T(parse(BigFloat,"0.283290599702151415321527419056733335978436595493855789831434"))
     a3415 = T(parse(BigFloat,"3.21085125837766640960131490544236787005557320332238705967955"))
     a3416 = T(parse(BigFloat,"-0.223538777364845699920233756214162507964125230083674032084065"))
     a3417 = T(parse(BigFloat,"-0.707121157204419073518727286207487212130091231955206160635271"))
     a3418 = T(parse(BigFloat,"3.21123345150287080408174729202856500893260034443022374267639"))
     a3419 = T(parse(BigFloat,"1.40954348309669766030414474301123175769045945573548986335553"))
     a3420 = T(parse(BigFloat,"-0.151362053443742613121602276742518111090963026203676055891793"))
     a3421 = T(parse(BigFloat,"0.372350574527014276454724080214619984397121028202148298716575"))
     a3422 = T(parse(BigFloat,"0.252978746406361336722199907762141285915775728129414319261111"))
     a3423 = T(parse(BigFloat,"-3.21085125837766640960131490544236787005557320332238705967955"))
     a3424 = T(parse(BigFloat,"-0.283290599702151415321527419056733335978436595493855789831434"))
     a3425 = T(parse(BigFloat,"-0.228875562160036081760729060738458584294220372552740218459295"))
     a3426 = T(parse(BigFloat,"-0.246465780813629305833609291181891407799228103869305705137021"))
     a3427 = T(parse(BigFloat,"-0.242715791581770239970282927959446515762745971386670541948576"))
     a3428 = T(parse(BigFloat,"-0.205713839404845018859120755122929542277570094982808905393991"))
     a3429 = T(parse(BigFloat,"-0.180392898478697766863635221946775437719620053641849228562435"))
     a3430 = T(parse(BigFloat,"-0.218194354945556658327188241581352107093288824322187941141516"))
     a3431 = T(-21//128)
     a3432 = T(-7//32)
     a3433 = T(-7//24)
    Feagin14ConstantCache(adaptiveConst,a0100,a0200,a0201,a0300,a0302,a0400,a0402,a0403,a0500,a0503,a0504,a0600,a0603,a0604,a0605,a0700,a0704,a0705,a0706,a0800,a0805,a0806,a0807,a0900,a0905,a0906,a0907,a0908,a1000,a1005,a1006,a1007,a1008,a1009,a1100,a1105,a1106,a1107,a1108,a1109,a1110,a1200,a1208,a1209,a1210,a1211,a1300,a1308,a1309,a1310,a1311,a1312,a1400,a1408,a1409,a1410,a1411,a1412,a1413,a1500,a1508,a1509,a1510,a1511,a1512,a1513,a1514,a1600,a1608,a1609,a1610,a1611,a1612,a1613,a1614,a1615,a1700,a1712,a1713,a1714,a1715,a1716,a1800,a1812,a1813,a1814,a1815,a1816,a1817,a1900,a1912,a1913,a1914,a1915,a1916,a1917,a1918,a2000,a2012,a2013,a2014,a2015,a2016,a2017,a2018,a2019,a2100,a2112,a2113,a2114,a2115,a2116,a2117,a2118,a2119,a2120,a2200,a2212,a2213,a2214,a2215,a2216,a2217,a2218,a2219,a2220,a2221,a2300,a2308,a2309,a2310,a2311,a2312,a2313,a2314,a2315,a2316,a2317,a2318,a2319,a2320,a2321,a2322,a2400,a2408,a2409,a2410,a2411,a2412,a2413,a2414,a2415,a2416,a2417,a2418,a2419,a2420,a2421,a2422,a2423,a2500,a2508,a2509,a2510,a2511,a2512,a2513,a2514,a2515,a2516,a2517,a2518,a2519,a2520,a2521,a2522,a2523,a2524,a2600,a2605,a2606,a2607,a2608,a2609,a2610,a2612,a2613,a2614,a2615,a2616,a2617,a2618,a2619,a2620,a2621,a2622,a2623,a2624,a2625,a2700,a2705,a2706,a2707,a2708,a2709,a2711,a2712,a2713,a2714,a2715,a2716,a2717,a2718,a2719,a2720,a2721,a2722,a2723,a2724,a2725,a2726,a2800,a2805,a2806,a2807,a2808,a2810,a2811,a2813,a2814,a2815,a2823,a2824,a2825,a2826,a2827,a2900,a2904,a2905,a2906,a2909,a2910,a2911,a2913,a2914,a2915,a2923,a2924,a2925,a2926,a2927,a2928,a3000,a3003,a3004,a3005,a3007,a3009,a3010,a3013,a3014,a3015,a3023,a3024,a3025,a3027,a3028,a3029,a3100,a3102,a3103,a3106,a3107,a3109,a3110,a3113,a3114,a3115,a3123,a3124,a3125,a3127,a3128,a3129,a3130,a3200,a3201,a3204,a3206,a3230,a3231,a3300,a3302,a3332,a3400,a3401,a3402,a3404,a3406,a3407,a3409,a3410,a3411,a3412,a3413,a3414,a3415,a3416,a3417,a3418,a3419,a3420,a3421,a3422,a3423,a3424,a3425,a3426,a3427,a3428,a3429,a3430,a3431,a3432,a3433,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,c21,c22,c23,c24,c25,c26,c27,c28,c29,c30,c31,c32,c33,c34,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b21,b22,b23,b24,b25,b26,b27,b28,b29,b30,b31,b32,b33,b34,b35)
end
